diff --git a/.env.example b/.env.example deleted file mode 100644 index 45198de..0000000 --- a/.env.example +++ /dev/null @@ -1,26 +0,0 @@ -# ============================================================================= -# AnteLab Environment Variables -# Copy this file to .env and fill in your values. -# -# Override chain: code defaults → YAML config → environment variables -# Environment variables always win over YAML. -# ============================================================================= - -# --- Config file path (defaults to antelab/config/default.yaml) --- -# ANTELAB_CONFIG_PATH=experiments/company-survival-gauntlet.yaml -# ANTELAB_CONFIG_PATH=antelab/config/default.yaml - -# --- LLM settings --- -# ANTELAB_LLM_MODE=mock # mock | openai | anthropic -# ANTELAB_LLM_MODEL=gpt-4o-mini # Model name (ignored in mock mode) -# ANTELAB_LLM_TEMPERATURE=0.7 # Sampling temperature -# ANTELAB_LLM_MAX_TOKENS=512 # Max tokens per response - -# --- API keys (required when using real LLM providers) --- -# OPENAI_API_KEY=sk-... -# ANTHROPIC_API_KEY=sk-ant-... - -# --- Server settings --- -# ANTELAB_SERVER_HOST=127.0.0.1 # Bind address (0.0.0.0 for Docker) -# ANTELAB_SERVER_PORT=8000 # API port -# ANTELAB_LOG_LEVEL=INFO # DEBUG | INFO | WARNING | ERROR diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 493f294..b61dc7b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,54 +7,69 @@ on: branches: [main] jobs: - backend: - runs-on: ubuntu-latest - timeout-minutes: 15 - + kernel: + name: kernel-${{ matrix.machine }} + strategy: + fail-fast: false + matrix: + include: + - runner: ubuntu-24.04 + machine: x86_64 + - runner: macos-14 + machine: arm64 + runs-on: ${{ matrix.runner }} + timeout-minutes: 20 steps: - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 with: python-version: "3.12" - - uses: astral-sh/setup-uv@v5 with: enable-cache: true - cache-dependency-glob: "pyproject.toml" - - - name: Create venv and install deps + cache-dependency-glob: "uv.lock" + - name: Assert runtime architecture + env: + EXPECTED_MACHINE: ${{ matrix.machine }} + run: python -c "import os, platform; actual = platform.machine(); expected = os.environ['EXPECTED_MACHINE']; assert actual == expected, f'expected {expected}, got {actual}'" + - run: uv sync --extra dev --frozen + - run: uv lock --check + - run: uv run ruff check antelab tests scripts + - run: uv run mypy antelab scripts + - run: uv run pytest -q + - name: Verify 500-tick golden repeatability + shell: bash run: | - uv venv .venv --python 3.12 - uv pip install -e ".[dev]" --python .venv/bin/python + tmp_dir="$(mktemp -d)" + trap 'rm -rf "$tmp_dir"' EXIT + uv run antelab run experiments/foraging-genesis.yaml --ticks 500 --output "$tmp_dir/run-a.json" + uv run antelab run experiments/foraging-genesis.yaml --ticks 500 --output "$tmp_dir/run-b.json" + cmp "$tmp_dir/run-a.json" "$tmp_dir/run-b.json" + uv run python - "$tmp_dir/run-a.json" tests/golden/foraging-genesis-500.json <<'PY' + import hashlib + import json + import sys + from pathlib import Path - - name: Ruff check - run: uv run ruff check antelab/ tests/ - - - name: Pytest - run: uv run pytest tests/ - - frontend: - runs-on: ubuntu-latest - timeout-minutes: 15 - - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-node@v4 - with: - node-version: "22" - cache: npm - cache-dependency-path: frontend/package-lock.json - - - name: Install deps - run: npm ci - working-directory: frontend - - - name: Typecheck - run: npm run typecheck - working-directory: frontend - - - name: Build - run: npm run build - working-directory: frontend + artifact_path, golden_path = (Path(value) for value in sys.argv[1:]) + artifact_bytes = artifact_path.read_bytes() + artifact = json.loads(artifact_bytes) + golden = json.loads(golden_path.read_text(encoding="utf-8")) + actual = { + "artifact_sha256": hashlib.sha256(artifact_bytes).hexdigest(), + "config_version": artifact["config"]["schema_version"], + "engine_version": artifact["engine_version"], + "final_checksum": artifact["final_checksum"], + "ticks": artifact["ticks_completed"], + } + if actual != golden: + raise SystemExit(f"golden mismatch: actual={actual!r} expected={golden!r}") + PY + - name: Build and install wheel smoke + shell: bash + run: | + uv build --out-dir "$RUNNER_TEMP/dist" + uv venv "$RUNNER_TEMP/wheel-venv" --python 3.12 + uv pip install --python "$RUNNER_TEMP/wheel-venv/bin/python" "$RUNNER_TEMP"/dist/*.whl + "$RUNNER_TEMP/wheel-venv/bin/antelab" --help + "$RUNNER_TEMP/wheel-venv/bin/antelab" run experiments/foraging-genesis.yaml --ticks 10 --output "$RUNNER_TEMP/installed-smoke.json" diff --git a/.github/workflows/frontend-ci.yml b/.github/workflows/frontend-ci.yml deleted file mode 100644 index 8db08f9..0000000 --- a/.github/workflows/frontend-ci.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: Frontend CI - -on: - push: - branches: [main, master] - pull_request: - branches: [main, master] - -jobs: - frontend: - runs-on: ubuntu-latest - timeout-minutes: 25 - - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-python@v5 - with: - python-version: "3.12" - - - name: Install backend (for e2e stack) - run: | - python3 -m venv .venv - .venv/bin/pip install -U pip - .venv/bin/pip install -e ".[dev]" - - - uses: actions/setup-node@v4 - with: - node-version: "22" - cache: npm - cache-dependency-path: frontend/package-lock.json - - - run: npm ci - working-directory: frontend - - - name: Install Playwright Chromium - run: npx playwright install --with-deps chromium - working-directory: frontend - - - name: Unit tests, build, lint - run: npm run test && npm run build && npm run lint - working-directory: frontend - - - name: Playwright e2e - run: npm run test:e2e - working-directory: frontend - - - name: Upload Playwright visual artifacts - if: always() - uses: actions/upload-artifact@v4 - with: - name: frontend-playwright-artifacts - path: | - frontend/test-results/**/*.png - frontend/test-results/**/*.webm - frontend/test-results/**/*.zip - if-no-files-found: ignore diff --git a/.gitignore b/.gitignore index b9d7dc6..920996b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,229 +1,20 @@ -# Node / Frontend -node_modules/ -frontend/dist/ -frontend/.tsbuild/ -.vite/ - -# Byte-compiled / optimized / DLL files +.venv/ __pycache__/ -*.py[codz] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -share/python-wheels/ +*.py[cod] *.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.nox/ +.pytest_cache/ +.ruff_cache/ +.mypy_cache/ .coverage -.coverage.* -.cache -nosetests.xml coverage.xml -*.cover -*.py.cover -.hypothesis/ -.pytest_cache/ -cover/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 -db.sqlite3-journal - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -.pybuilder/ -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# IPython -profile_default/ -ipython_config.py - -# pyenv -# For a library or package, you might want to ignore these files since the code is -# intended to run in multiple environments; otherwise, check them in: -# .python-version - -# pipenv -# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. -# However, in case of collaboration, if having platform-specific dependencies or dependencies -# having no cross-platform support, pipenv may install dependencies that don't work, or not -# install all needed dependencies. -#Pipfile.lock - -# UV -# Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control. -# This is especially recommended for binary packages to ensure reproducibility, and is more -# commonly ignored for libraries. -#uv.lock - -# poetry -# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. -# This is especially recommended for binary packages to ensure reproducibility, and is more -# commonly ignored for libraries. -# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control -#poetry.lock -#poetry.toml - -# pdm -# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. -# pdm recommends including project-wide configuration in pdm.toml, but excluding .pdm-python. -# https://pdm-project.org/en/latest/usage/project/#working-with-version-control -#pdm.lock -#pdm.toml -.pdm-python -.pdm-build/ - -# pixi -# Similar to Pipfile.lock, it is generally recommended to include pixi.lock in version control. -#pixi.lock -# Pixi creates a virtual environment in the .pixi directory, just like venv module creates one -# in the .venv directory. It is recommended not to include this directory in version control. -.pixi - -# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm -__pypackages__/ - -# Celery stuff -celerybeat-schedule -celerybeat.pid - -# SageMath parsed files -*.sage.py - -# Environments +dist/ +build/ +/artifacts/ +benchmarks/*.json .env -.envrc -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -.dmypy.json -dmypy.json - -# Pyre type checker -.pyre/ - -# pytype static type analyzer -.pytype/ - -# Cython debug symbols -cython_debug/ - -# PyCharm -# JetBrains specific template is maintained in a separate JetBrains.gitignore that can -# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore -# and can be added to the global gitignore or merged into this file. For a more nuclear -# option (not recommended) you can uncomment the following to ignore the entire idea folder. -#.idea/ - -# Abstra -# Abstra is an AI-powered process automation framework. -# Ignore directories containing user credentials, local state, and settings. -# Learn more at https://abstra.io/docs -.abstra/ - -# Visual Studio Code -# Visual Studio Code specific template is maintained in a separate VisualStudioCode.gitignore -# that can be found at https://github.com/github/gitignore/blob/main/Global/VisualStudioCode.gitignore -# and can be added to the global gitignore or merged into this file. However, if you prefer, -# you could uncomment the following to ignore the entire vscode folder -# .vscode/ - -# Ruff stuff: -.ruff_cache/ - -# PyPI configuration file -.pypirc - -# Cursor -# Cursor is an AI-powered code editor. `.cursorignore` specifies files/directories to -# exclude from AI features like autocomplete and code analysis. Recommended for sensitive data -# refer to https://docs.cursor.com/context/ignore-files -.cursor/ -.cursorignore -.cursorindexingignore - -# Local agent/tool metadata -.claude/ +.env.* +.DS_Store .codex/ -.scratch/ -*.pid - -# Marimo -marimo/_static/ -marimo/_lsp/ -__marimo__/ - -# Local spec scratch files. Canonical specs/templates under specs/ are tracked. -specs/*.local.md - -# Playwright (frontend e2e) -frontend/test-results/ -frontend/playwright-report/ -frontend/blob-report/ +.claude/ .gstack/ +.superpowers/ diff --git a/.python-version b/.python-version new file mode 100644 index 0000000..e4fba21 --- /dev/null +++ b/.python-version @@ -0,0 +1 @@ +3.12 diff --git a/AGENTS.md b/AGENTS.md index 8c75b0e..bd7126b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,29 +1,8 @@ -## Learned User Preferences +# AnteLab Agent Rules -- Prefers spec-first delivery: create or update specs before implementation and execute features against documented acceptance criteria. -- Prefers sequential execution of the recommended implementation order, continuing phase-by-phase with concise "next step" progression. -- Prefers uninterrupted execution through completion once implementation starts, rather than pausing between phases. -- Prefers repository changes to exclude local tool metadata directories from commits. -- Prefers a map-first game observer UI (pixel-art / indie / SimCity-style: districts and agent tokens on the main stage) where agent activity is visible live and agents freely move like people rather than standing idle, not only a data dashboard or cosmetic theme swap; expects readable scene density and reference-faithful composition while keeping the simulation experiment-first; for surrounding shell chrome, steers toward a dense "hardcore observation" deck (RimWorld-style: top unit strip, bottom log strip, side inspector rail) rather than generic dashboard layouts or purely decorative cute UI. -- Prefers real tile-or-sprite asset rendering for the observer map over pure CSS pseudo-pixel styling when the stack can support it, including permissively licensed open packs when bespoke art is not ready yet. Repeated feedback: shell/HUD-only styling passes rarely achieve a convincing pixel-game read on their own; cohesive map-layer tiles/sprites (and consistent pixel scaling in the viewport) are treated as the primary lever. Open to non-pixel map presentations (vector schematic, HD Canvas or Pixi without forced pixel scaling, or DOM-first modes) when they improve observability and product fit versus a retro game shell. -- Expects iterative frontend work to include periodic visual self-checks (for example scheduled Playwright scans or screenshots) to confirm the UI is moving toward the intended game-like direction. -- Expects complete long-run society functionality rather than narrow MVPs for core simulation improvements, including lifecycle dynamics such as births plus survival, resource, social, and environmental pressure systems that can sustain society beyond the initial agents. -- Prioritizes product-shape outcomes (watchable agents on screen, sharp three-second pitch, commercializable, GitHub-stars-friendly hook) over research/experiment framing when the two conflict; dislikes ambiguous or hedged positioning and has retired the "civilization laboratory" framing in favor of a live AnteLab show framing. Wants the thesis to read through a "Parallel Worlds" channel: the same AI cast under different physical rules, including speech vs silence, scarcity vs plenty, fog of war vs omniscience, and mortal vs immortal comparisons. -- Wants heterogeneous initialization and run-to-run variation; expects long-run order to emerge under constitution-style physics rather than identical scripted bootstraps. -- Prioritizes natural emergence over enforcing hand-authored social rules ("weak rules, strong nature") as the architectural direction. -- Expects agents to obey basic physical constraints in-world (for example preventing physically impossible resource operations). - -## Learned Workspace Facts - -- `RUNNING.md` is used as the canonical startup runbook for local and Docker workflows; `Makefile` provides standard shortcuts for setup, backend/frontend run, test, lint, and Docker operations. -- The incremental continual-learning index for this workspace is at `.cursor/hooks/state/continual-learning-index.json`. -- `DISCOVERIES.md` is the running log for dated, reproducible experiment findings aimed at readers outside day-to-day development. -- `make generate-posts COMPARE=` runs `scripts/generate_discovery_posts.py` to emit share-ready draft posts under `results/`. -- Default lifecycle timing in `antelab/config/default.yaml` should stay coherent with experiment expectations so births can appear in practical run windows. -- Local development now runs the backend on port `8080`; `make run-backend` and the frontend Vite `/api`/`/ws` proxies target `localhost:8080`. -- `antelab/api/server.py` uses a shared `asyncio.Lock` around `POST /api/tick`, `POST /api/save`, `POST /api/load`, and `GET /api/world` for consistent world reads and writes; `POST /api/save` writes `snapshot_version: 2` JSON with `agents_private` (per-agent `personality` and `memory_events`) for `POST /api/load` replay. Multiple API worker processes still need an external single-writer strategy. -- Canonical specs under `specs/` are now visible to git; only local scratch specs matching `specs/*.local.md` are ignored. -- Pixel art intake for the observer UI is documented under `frontend/public/assets/README.md` with a machine-readable source list in `frontend/public/assets/asset-sources.json`; downloaded textures are organized under `frontend/public/assets/terrain/`, `buildings/`, and `characters/`. -- The observer shell uses a `pixel-art-ui` class on the app root for pixel-shell CSS overrides; the right **show deck** (HUD label **Deck**; legacy code may still say "director") open/closed state persists in `localStorage` as `antelab.directorPanelOpen` (`1` / `0`). When focus is not in an input, textarea, or contenteditable, the `]` key toggles that rail (same as the HUD control). -- The project is now positioned as **AnteLab**: a watchable Parallel Worlds / company-shock observer layer over the AnteLab engine. Do not reintroduce old single-scenario survival branding as the default product frame; default local runs should focus on `experiments/company-survival-gauntlet.yaml` unless a task explicitly targets another scenario. -- `docs/plans/2026-04-25-long-run-emergence-design.md` is the confirmed technical design for the complete Long-Run Society Engine, covering four official pressure presets, dynamic world systems, physical primitives, measurement artifacts, and benchmark phases. \ No newline at end of file +- Read the approved reboot design and current implementation plan before edits. +- Preserve deterministic integer state and simulation-owned randomness. +- Do not add LLM calls, free-form actions, company simulation, or receipt product + behavior to the V1 core. +- Use tests first and explicit file staging; never use `git add .`. +- Treat extinction as a valid result and broken invariants as engine failures. diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 73ee56e..b8f0c39 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -1,330 +1,30 @@ # Architecture -## AnteLab on a reproducible simulation core - -**AnteLab** is the audience-facing observer product: a watchable, map-first view -of LLM agents in a shared world with real scarcity and no scripted outcomes. - -**AnteLab** (this repository’s Python package and engine) is the controlled -experiment platform underneath: the Constitution defines a **baseline** set of -physics (the control group); experiments vary one or more axioms and observe -the results. The same runs are replayable, snapshot-loadable, and comparable -across configurations. - -The two are one stack: physics honesty and reproducibility live in the engine; -presentation and narrative framing live in the observer and shareable -artifacts—not as a second ruleset. - -**One-line contract:** given the same seed, experiment config, and tick order, you -get the same simulation outcomes; AnteLab displays and records—it does not -re-resolve actions or override `world.axioms`. - -See [CONSTITUTION.md](CONSTITUTION.md) for the baseline axioms. -See [EXPERIMENTS.md](EXPERIMENTS.md) for the experiment catalog and methodology. - -This document owns system contracts and module responsibilities. Product pitch -belongs in [README.md](README.md), run commands in [RUNNING.md](RUNNING.md), -feature requirements in [specs/](specs/), and multi-phase plans in -[docs/](docs/). - -## Physics, Not Laws - -The core principle: the engine is a **physics simulator**, not a **rule book**. - -``` -What the engine hardcodes (physics): What agents invent (culture): -───────────────────────────────────── ────────────────────────────── -Agents occupy locations Property rights -Perception scope (tunable) Laws and governance -Resources are conserved Trade and economy -Actions cost time (1 per tick) Morality and norms -Communication reach (tunable) Relationships and trust -Taking an object changes possession Theft (the concept) -Inventory tracks who holds what Ownership (the concept) -``` - -## Engine Layers - -The engine separates three independently toggleable layers: - -``` -┌─────────────────────────────────────────────────────────┐ -│ Social Tracking (optional) │ -│ trust_by_agent · obligation_by_agent · role_claims │ -│ Enabled via: axioms.social_tracking = true │ -├─────────────────────────────────────────────────────────┤ -│ Biology (optional) │ -│ hunger · fatigue · stress · aging · disease │ -│ reproduction · auto_eat │ -│ Configured via: lifecycle params + axioms │ -├─────────────────────────────────────────────────────────┤ -│ Physics (core, always on) │ -│ location · inventory · action resolution · events │ -│ move · say · give · take · examine · rest │ -└─────────────────────────────────────────────────────────┘ -``` - -When the Social Tracking layer is disabled (`axioms.social_tracking = false`), -primitives like `give` and `take` perform only their physical effect (item -transfer) without any side-effect bookkeeping. This allows experiments to test -whether social constructs emerge from agent behavior alone. - -When mortality is disabled (`axioms.mortality = false`), agents never die, -allowing study of long-lived societies. - -## System Overview - -``` -┌─────────────────────────────────────────────────────────┐ -│ Frontend (TS) │ -│ Real-time observation UI │ -│ │ -│ ┌───────────────────────────────────────────────────┐ │ -│ │ React UI Layer │ │ -│ │ TopBar · IconDock · FloatingDetailCard · keyboard │ │ -│ └───────────────────────────────────────────────────┘ │ -│ ┌───────────────────────────────────────────────────┐ │ -│ │ Pixi Render Layer │ │ -│ │ PixiWorldStage — districts · roads · agent tokens │ │ -│ └───────────────────────────────────────────────────┘ │ -│ ┌───────────────────────────────────────────────────┐ │ -│ │ CSS Atmosphere Layer │ │ -│ │ MapAtmosphere · AgentHaloLayer · world→screen │ │ -│ └───────────────────────────────────────────────────┘ │ -└──────────────────────┬──────────────────────────────────┘ - │ WebSocket / REST -┌──────────────────────┴──────────────────────────────────┐ -│ API Layer (Python) │ -│ FastAPI · WebSocket broadcast │ -│ GET /api/experiment → axioms + measurements │ -└──────────────────────┬──────────────────────────────────┘ - │ in-process calls -┌──────────────────────┴──────────────────────────────────┐ -│ Simulation Engine (Python) │ -│ │ -│ ┌─────────┐ ┌─────────┐ ┌──────────────────┐ │ -│ │ World │ │ Agents │ │ Tick Runner │ │ -│ │ (physics)│◄──┤ (N) │──►│ (event loop) │ │ -│ └─────────┘ └────┬────┘ └───────┬──────────┘ │ -│ │ │ │ -│ ┌─────┴─────┐ ┌─────┴──────────┐ │ -│ │ LLM Client│ │ Experiment │ │ -│ │ (async) │ │ Observer │ │ -│ └───────────┘ └────────────────┘ │ -└─────────────────────────────────────────────────────────┘ -``` - -### Frontend Architecture Pattern - -AnteLab's observer is a **map-first Living World dashboard** (spec 013): - -- **PixiJS owns the world stage**: data-topology map rendering, agent tokens, event - pulses, camera-centric map interactions. -- **React owns product UI**: TopBar status line, IconDock (collapsible right-edge - panel with Agents/Events/Stats tabs), FloatingDetailCard (glassmorphism agent - detail on the map), keyboard shortcut handling. -- **CSS owns atmosphere**: MapAtmosphere (district glow, grid, vignette), - AgentHaloLayer (faction-colored pulsing rings), positioned via world→screen - coordinate transform matching the PixiJS camera. -- **Data contracts stay backend-first**: all layers consume the same world/tick - snapshots and event streams from FastAPI endpoints and WebSocket broadcast. - -The observer is a lens, not a second ruleset. Its job is to make agent behavior -legible, shareable, and trustworthy without adding decorative fiction. - -### Data-First Observer Design Pillars - -The frontend is a professional observation instrument. Every visual element must -earn its place by surfacing real simulation state. - -1. **Experiment-first truth** - - Every visual element must map to real simulation state. - - No fabricated events, outcomes, or hidden rule overrides in the renderer. -2. **Map-first readability** - - The world map is the primary stage: a live data topology, not a game level. - - Agent activity, proximity, movement, and hotspots should be legible at a glance. -3. **Data-first, not game-like** - - The world map renders data geometries (nodes, edges, heat overlays), not - decorative terrain. - - Agent tokens are minimal identifiers (monograms, status badges, activity - indicators), not character sprites. - - Motion communicates state transitions, not ambient animation. -4. **Reproducible visual playback** - - Replay and compare views must render the same run artifacts deterministically. - - Visual transitions may be smoothed, but underlying state order cannot be changed. -5. **Dual-layer frontend contract** - - React: controls, analysis, timeline, filters, compare workflows. - - Canvas: data-topology world map, agent identifiers, event emphasis, camera. -6. **Progressive enhancement** - - Ship clarity first (state visibility, action legibility), then polish - (trajectory trails, heat map interpolation, camera easing). - - Effects must never obscure experiment signals. - -### Observer Truth Labeling - -The interface is a monitoring instrument, not a game renderer: - -- Engine-backed values (tick, event log, agent location/inventory, run metrics) - are primary truth surfaces — prominent, precise, unadorned. -- Decorative effects (scanlines, CRT simulation, terrain skinning) have no place - in a data observer. Every pixel should communicate state or afford interaction. -- Synthetic visual projections that do not map to simulation data must not appear. - -## Module Map - -### Modules - - -| Module | File | Responsibility | -| -------------------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------- | -| `World` | `antelab/engine/world.py` | Physics engine: holds state, resolves free-form intents against physical primitives. Respects experiment axioms. | -| `ExperimentAxioms` | `antelab/engine/world.py` | Tunable physics dimensions for experiments (perception, communication, social tracking, mortality) | -| `Agent` | `antelab/engine/agent.py` | Owns personality, memory; runs perceive-decide-act cycle with free-form intent | -| `TickRunner` | `antelab/engine/tick.py` | Advances simulation by one step: iterates agents, collects actions, applies results, records measurements | -| `ExperimentObserver` | `antelab/engine/measurement.py` | Records per-tick metrics (action distribution, resource flow, colocation, cooperation) without affecting simulation | -| `LLMClient` | `antelab/llm/client.py` | Async wrapper around LLM APIs with mock mode for development | -| `API Server` | `antelab/api/server.py` | FastAPI app exposing simulation state, control endpoints, and experiment measurements | -| `Config` | `antelab/config/` | YAML-based configuration for world, agents, LLM, and experiment axioms | - -### Frontend Components - -| Component | File | Responsibility | -|-----------|------|---------------| -| `App` | `frontend/src/App.tsx` | Root: wires data flow, camera state, keyboard shortcuts, faction assignment | -| `TopBar` | `frontend/src/components/TopBar.tsx` | 32px status bar: tick, signal, agent count, zone count, REC indicator | -| `WorldViewport` | `frontend/src/components/WorldViewport.tsx` | Map container: orchestrates PixiJS canvas + CSS atmosphere + halo + detail layers | -| `PixiWorldStage` | `frontend/src/components/PixiWorldStage.tsx` | PixiJS canvas: districts, roads, agent tokens, event pulses, camera | -| `IconDock` | `frontend/src/components/IconDock.tsx` | Collapsible right-edge panel: 44px icon bar → 280px tabbed panel (Agents/Events/Stats) | -| `MapAtmosphere` | `frontend/src/components/MapAtmosphere.tsx` | CSS overlays: district glow (agent-count intensity), grid, edge vignette | -| `AgentHaloLayer` | `frontend/src/components/AgentHaloLayer.tsx` | CSS animated halos on agent markers + `worldToScreen()` coordinate transform | -| `FloatingDetailCard` | `frontend/src/components/FloatingDetailCard.tsx` | Glassmorphism agent detail card positioned on the map | -| `appModel` | `frontend/src/appModel.ts` | Type definitions: `WorldState`, `AgentInfo`, event classification | -| `pixelSpec` | `frontend/src/pixelSpec.ts` | Camera contract: zoom levels, pan snapping, coordinate transforms | -| `useSimulationData` | `frontend/src/useSimulationData.ts` | WebSocket hook: live world state, replay controls, stream status | - - -### Data Flow - -``` - ┌──────────────────────────────────────────────────────────┐ - │ TickRunner.run() │ - │ │ - │ observer.begin_tick(world.tick) │ - │ │ - │ for each agent: │ - │ 1. perception = agent.perceive(world) │ - │ → scope controlled by axioms.perception │ - │ 2. action = agent.decide(perception) ──► LLM │ - │ → free-form intent: { verb, parameters } │ - │ 3. result = world.apply(action) │ - │ → resolved against physical primitives │ - │ → social tracking conditional on axioms │ - │ 4. observer.record_action(action, result) │ - │ 5. agent.remember(result) │ - │ │ - │ observer.record_locations(...) │ - │ observer.end_tick() │ - │ world.tick += 1 │ - └──────────────────────────────────────────────────────────┘ -``` - -### Key Types - -```python -@dataclass -class Action: - """A free-form intent expressed by an agent.""" - agent_id: str - verb: str # any verb — no fixed menu - parameters: dict[str, Any] # target, destination, message, item, etc. - reasoning: str # LLM's chain-of-thought - -@dataclass -class Perception: - """What an agent observes (scope controlled by axioms).""" - tick: int - location: str - nearby_agents: list[str] # local or global, depending on axiom - nearby_items: list[str] - recent_events: list[str] - -@dataclass -class ActionResult: - """Outcome after the world resolves an intent against physics.""" - success: bool - description: str - events: list[str] - state_changes: dict[str, Any] - -@dataclass -class ExperimentAxioms: - """Tunable physics for civilization experiments.""" - perception: str # "local" | "global" - communication: str # "colocated" | "broadcast" | "silent" - social_tracking: bool # engine tracks trust/obligation? - auto_eat: bool # engine auto-consumes food? - mortality: bool # agents can die? - memory_size: int # agent memory buffer size -``` - -### Physical Primitives - -The World resolves free-form verbs by mapping them to physical primitives. -Synonyms are supported (e.g., "walk" -> `move`, "grab" -> `take`). -Unknown verbs fail as "physically unresolvable", not "invalid". - - -| Primitive | Effect | Affected by axioms/config | -| --------------------- | ------------------------------------------- | ------------------------------------------------------------ | -| `move(destination)` | Agent changes location | Location graph adjacency | -| `say(message)` | Message logged, visible to nearby agents | `communication`: disabled in "silent" mode | -| `give(target, item)` | Item moves from agent to target | `social_tracking`: trust/obligation side-effects conditional | -| `take(source, item)` | Item moves from source/location to agent | `social_tracking`: trust/obligation side-effects conditional | -| `harvest(resource)` | Location resource moves into inventory | Resource zones and local availability | -| `store(item)` | Inventory item moves into local storage | Resource decay/storage config | -| `build_shelter(...)` | Materials become a location shelter feature | Environment/pressure config | -| `consume(item)` | Inventory food reduces hunger | Lifecycle parameters and `auto_eat` | -| `treat(target, item)` | Medicine reduces disease pressure | Disease pressure config | -| `reproduce(target)` | Eligible agents may start pregnancy | Lifecycle parameters and `mortality` | -| `examine(target)` | Agent reads public state of target | `perception`: target scope varies | -| `rest()` | Agent does nothing and recovers needs | Lifecycle parameters | -| `craft(recipe)` | Inputs transform into outputs | `world.recipes` and resource conservation | - - -Any higher-level concept ("trade", "vote", "arrest", "marry") is a **multi-agent protocol** -that agents coordinate through communication, not a built-in engine feature. - -### Experiment Infrastructure - -Experiments are defined as YAML configs in `experiments/`: - -``` -experiments/ - company-genesis.yaml # founder starts alone, hires from talent pool - company-survival-gauntlet.yaml # 5-shock resilience test -``` - -Each config extends `antelab/config/default.yaml`. The `ExperimentObserver` collects -measurements automatically during each tick run, accessible via -`GET /api/experiment`. - -### Known Simplifications - - -| Constitution says | Current implementation | Impact | -| ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | -| Art. III transparent-world discussions assume rich global observability | `perception=global` currently exposes global agent identity; richer details still come from events + local interactions | Transparent-world runs are meaningful, but "perfect observability" scenarios are still a partial implementation | -| Experiment analysis should surface communication/cooperation shifts | Artifact comparison now includes observer-derived behavior metrics, but still uses run-level aggregates | Counterfactual deltas are more visible than before, but sequence-level causal analysis remains future work | -| Long-run persistence can be queried as a store | Current persistence uses JSON snapshot history plus a passive SQLite `EventStore` for snapshots/events | Good replay and recap baseline; full event-sourced replay and advanced event search remain future work | - - -### Design Decisions - -- **Synchronous tick model**: All agents act within a single tick before the world advances. -- **Mock-first LLM**: `LLMClient` defaults to mock implementation. Real API calls are opt-in via config. -- **Flat state with snapshot persistence**: Core world state stays in-memory dataclasses, with JSON snapshot history/save-load for reproducibility. -- **Action validation by World**: Agents propose free-form intents; the World resolves them against physics. -- **Config-driven agents**: Agent definitions live in YAML, not code. -- **Experiment-first architecture**: Every physical behavior is toggleable via axiom configuration. The engine is designed for controlled experiments, not a single fixed simulation. -- **Measurement without interference**: The `ExperimentObserver` collects data passively, never affecting simulation behavior. - +The headless Python engine is authoritative. Organisms receive bounded local +sensors, emit bounded effectors, and inherit fixed-point genomes. Rendering and +analysis never feed state back into the engine. + +The implementation contract is defined by +`docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md`. +The first implementation slice is tracked by +`docs/superpowers/plans/2026-07-10-deterministic-evolution-kernel.md`. + +## Kernel boundaries + +- `antelab/core/` owns fixed-point physics, RNG, organisms, spatial snapshots, + evolution, and authoritative tick orchestration. +- `antelab/experiments/` owns bounded headless execution. +- `antelab/artifacts/` owns the canonical versioned JSON contract. +- `antelab/cli.py` is the local one-command entry point. +- `scripts/` contains verification tools; it is not imported by the engine. + +Authoritative positions, headings, energy, genes, controller values, IDs, and +RNG state are integers. The engine owns randomness, and rendering or analysis +must never feed values back into simulation state. + +## Reproducibility contract + +V1 supports CPython 3.12.x on Linux x86_64 and macOS arm64. The same engine +version, normalized config, seed, and tick count must produce the same final +checksum and byte-identical canonical artifact. CI asserts the runtime machine +architecture instead of trusting runner labels alone. diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index a0771d8..0000000 --- a/CLAUDE.md +++ /dev/null @@ -1,106 +0,0 @@ -# CLAUDE.md - -This file is the short operating contract for AI agents working in this repo. -Do not duplicate the full product pitch or architecture here; link to the -canonical documents instead. - -## Read Order - -1. [README.md](README.md) - product shape and quick start. -2. [CONSTITUTION.md](CONSTITUTION.md) - baseline physics and hard constraints. -3. [ARCHITECTURE.md](ARCHITECTURE.md) - system contracts and module map. -4. [CONTRIBUTING.md](CONTRIBUTING.md) - workflow, tests, and spec rules. -5. [RUNNING.md](RUNNING.md) - current run commands and ports. - -## Non-Negotiable Engine Rules - -The World is a physics engine, not a game master. - -1. Agents express free-form intents through `verb` + `parameters`; do not add - hardcoded action menus. -2. Unknown verbs fail as physically unresolvable, not morally invalid. -3. Engine code checks physical possibility only; never enforce politeness, - fairness, property law, leadership legitimacy, or trade contracts. -4. Do not leak global information unless the active experiment axiom explicitly - enables global perception. -5. Resources are conserved unless a config explicitly models natural - regeneration or decay. -6. Physical behaviors that affect experiments must be controlled by config or - `world.axioms`. -7. Measurement and observer UI are passive; they must not alter simulation - outcomes. - -## Product/Engine Split - -- **AnteLab** is the watchable show layer: map, cast, recap, shareable observer - experience. -- **AnteLab** is the Python simulation core: reproducible runs, physical - primitives, experiment axioms, artifacts, and measurements. - -The observer can dramatize real state, but it must not invent events or become a -second ruleset. - -## Spec-First Workflow - -Every feature starts with a spec in `specs/NNN-title.md` using -`specs/TEMPLATE.md`. - -1. Write or update the spec. -2. Check Constitution and Architecture alignment. -3. Write tests from the acceptance criteria. -4. Implement the narrow behavior described by the spec. -5. Run verification. -6. Update status/docs only where the canonical contract changed. - -## Verification - -Use Makefile targets unless debugging something narrower: - -```bash -make test -make lint -cd frontend && npm run typecheck -cd frontend && npm run build -``` - -For frontend visual changes, include a browser/screenshot pass when practical. -For experiment changes, include a matrix or long-run smoke when practical: - -```bash -make run-matrix-smoke -make long-run-smoke -``` - -## Documentation Ownership - -- `README.md`: public entry, quick start, document map. -- `RUNNING.md`: canonical local/Docker runbook. -- `CONTRIBUTING.md`: contributor workflow and how-to guidance. -- `CONSTITUTION.md`: baseline physics axioms only. -- `ARCHITECTURE.md`: module contracts, data flow, known simplifications. -- `EXPERIMENTS.md`: methodology and catalog. -- `DISCOVERIES.md`: dated, reproducible findings. -- `ROADMAP.md`: current status and next priorities. -- `SPEC_STATUS.md`: implemented specs mapped to code and tests. -- `docs/`: deeper plans and design notes. -- `specs/`: feature specs and template. - -When a fact belongs in one canonical place, link to it rather than restating it. - -## Skill routing - -When the user's request matches an available skill, invoke it via the Skill tool. When in doubt, invoke the skill. - -Key routing rules: -- Product ideas/brainstorming → invoke /office-hours -- Strategy/scope → invoke /plan-ceo-review -- Architecture → invoke /plan-eng-review -- Design system/plan review → invoke /design-consultation or /plan-design-review -- Full review pipeline → invoke /autoplan -- Bugs/errors → invoke /investigate -- QA/testing site behavior → invoke /qa or /qa-only -- Code review/diff check → invoke /review -- Visual polish → invoke /design-review -- Ship/deploy/PR → invoke /ship or /land-and-deploy -- Save progress → invoke /context-save -- Resume context → invoke /context-restore diff --git a/CONSTITUTION.md b/CONSTITUTION.md deleted file mode 100644 index 1db35a8..0000000 --- a/CONSTITUTION.md +++ /dev/null @@ -1,194 +0,0 @@ -# AnteLab Constitution - -This document defines the **baseline physical axioms** of the AnteLab simulation. -These axioms describe the default physics — the "control group" for experiments. -Each axiom can be varied to study how changes in physics affect agent behavior. - -Think of this as physics, not law. Physics says "objects fall"; law says "don't steal". -AnteLab hardcodes physics. Agents invent laws. Experiments change the physics. - -See [EXPERIMENTS.md](EXPERIMENTS.md) for the experiment catalog and methodology. - -This document owns baseline axioms. Do not add feature plans, run commands, or -UI/product copy here; link to the relevant canonical document instead. - ---- - -## Article I — Existence - -1. An **Agent** is the atomic unit of the simulation. Each agent has: - - An identity (unique, permanent) - - A location in the world (exactly one at any time) - - An internal state (personality, memory, needs) that only the agent itself can read - - A public state (name, location, visible actions) that other agents can observe -2. The **World** is the shared substrate. It holds: - - A spatial graph of locations - - A registry of all agents and their public states - - A global event log (append-only, agents can read but not edit) - - Shared resources (objects, tokens) that exist at locations - -## Article II — Time - -1. Time is discrete. The world advances in **ticks**. -2. Each tick, every living agent gets exactly **one action**. -3. All agents perceive the world state as it was at the **start** of the tick. - No agent sees another agent's action from the same tick. -4. Actions are resolved in a deterministic order (by agent ID). - -## Article III — Perception - -1. Agents can only perceive what is **local**: agents and events at their current location. -2. Agents can perceive the **public state** of nearby agents, never their internal state. -3. Agents remember what they have personally perceived. Memory is private and finite. -4. There is no global broadcast. Information travels only through agent-to-agent communication - and physical co-presence. - -## Article IV — Agency - -1. An agent's action is a **free-form intent** expressed as: - - A verb (what the agent wants to do) - - Parameters (targets, content, quantities) - - The agent has no predefined action menu. It can attempt anything. -2. The World resolves the intent against physical constraints: - - Can the agent physically do this? (e.g., is the target present? does the agent have the resource?) - - What changes in the world as a result? - - What do nearby agents observe? -3. The World never judges intent as "moral" or "immoral". It only checks physical possibility. - Whether an action is "good" or "bad" is for other agents to decide. - -## Article V — Communication - -1. Speech is an action. An agent can say anything during its turn. -2. Speech is heard by all agents at the same location. -3. There is no enforced truthfulness. Agents can lie. -4. Agreements between agents are not enforced by the World. - If Alice promises Bob something, only social pressure (from other agents) holds her to it. - -## Article VI — Resources - -1. Physical resources are conserved. Creating something requires inputs. -2. Resources exist at locations. To interact with a resource, an agent must be at its location. -3. Ownership is a social construct. The World tracks possession (who holds what), - but "ownership" and "property rights" are concepts agents must invent and enforce themselves. - -## Article VII — Life Cycle - -1. Agents are born, age, and die. These events are governed by configurable parameters. -2. The World enforces biological constraints (hunger, fatigue, aging) as physical realities. -3. Social constructs around life events (funerals, inheritance, birth celebrations) - are for agents to create. - -## Article VIII — Emergence - -1. **Laws** do not exist in the engine. Agents may propose rules, vote on them, and choose to - follow or break them. Enforcement is social, not mechanical. -2. **Economy** is not built-in. If agents want to trade, they coordinate through communication. - The World only processes the physical act of transferring resources. -3. **Relationships** are not tracked by the World. They exist in agent memory and behavior. -4. **Culture** is whatever patterns of behavior agents develop and transmit. - -## Article IX — What the Engine Must NOT Do - -1. Must not hardcode a fixed set of allowed actions. Actions are free-form intents. -2. Must not enforce social rules (politeness, fairness, honesty). -3. Must not create global information that wasn't physically transmitted. -4. Must not give any agent privileged access to world state. -5. Must not make moral judgments about agent behavior. -6. Must not prevent agents from attempting "bad" actions — only from physically impossible ones. - ---- - -## The Constitution as Experiment - -The nine articles above define the **baseline** — the default physics that -produce a "control group." Every article represents one or more tunable -dimensions: - - -| Article | Dimension | Baseline | Example Variations | -| ------- | ------------------- | --------------------- | ------------------------------------- | -| III | Perception scope | Local (co-located) | Global, radius-N, selective | -| V | Communication reach | Co-located speech | Broadcast, silent, written/persistent | -| VI | Resource dynamics | Conserved | Regenerating, infinite, decaying | -| IV | Action freedom | Free-form verbs | Restricted menu, pre-committed | -| II | Time model | Synchronous, 1 action | Async, multi-action | -| VII | Mortality | Agents die | Immortal, fragile, rebirth | -| III.3 | Memory capacity | 50-event buffer | Amnesiac (1), unlimited, shared | - - -An experiment changes one or more dimensions while holding the rest at -baseline. The interesting results are: - -- **Absences**: behaviors present in baseline that vanish under variation -- **Persistence**: behaviors that survive despite axiom changes -- **Novelty**: behaviors that appear only under variation - -See [EXPERIMENTS.md](EXPERIMENTS.md) for the full experiment catalog. - ---- - -## Implications for Implementation - -### The World is a physics engine, not a game master. - -The `apply_action` method should work like this: - -``` -Agent intent: "I want to take Bob's apple" - -World checks: - - Is Bob at the same location? → Yes/No - - Does Bob have an apple? → Yes/No - - Can the agent physically reach it? → Yes/No - -World does NOT check: - - Is this stealing? (social concept — not the World's job) - - Is this allowed by community rules? (agents enforce their own rules) - - Will Bob be upset? (Bob decides that himself next tick) - -If physically possible → execute and log the event -If physically impossible → reject with reason -``` - -### Action types are emergent, not enumerated. - -Instead of `action_type in ["speak", "move", "wait", "interact"]`, -the engine should interpret free-form verbs and resolve them against physical primitives: - - -| Physical primitive | What it means | -| -------------------- | -------------------------------------------- | -| `move(destination)` | Change agent's location | -| `say(message)` | Broadcast text to co-located agents | -| `give(target, item)` | Transfer a resource to another agent | -| `take(target, item)` | Attempt to take a resource (may be resisted) | -| `examine(target)` | Read the public state of a nearby entity | -| `rest()` | Do nothing, recover energy | - - -> **Future primitives**: The table above is not exhaustive. New physical primitives -> (e.g., `craft(inputs, output)` for resource transformation) can be added as the -> simulation grows, as long as they obey Article VI (resource conservation) and -> Article IX (no moral judgments). Adding a primitive is an engine extension, not -> a Constitution amendment. - -An agent saying "I want to trade my wheat for Bob's iron" gets decomposed into -`give(Bob, wheat)` + a social expectation that Bob will `give(self, iron)` next tick. -The World does not enforce the trade — Bob might just keep the wheat and walk away. - -### Engine layers - -The engine separates three concerns, each independently toggleable: - - -| Layer | Responsibility | Can be disabled? | -| ------------------- | --------------------------------------------- | -------------------- | -| **Physics** | Location, inventory, action resolution | No (core) | -| **Biology** | Hunger, fatigue, aging, disease, reproduction | Yes (per experiment) | -| **Social Tracking** | Trust, obligation, role claims | Yes (per experiment) | - - -When the Social Tracking layer is disabled, primitives like `give` and `take` -perform only their physical effect (item transfer) without any side-effect -bookkeeping. This allows experiments to test whether social constructs emerge -from agent behavior alone. \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 93df129..3f2a672 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,135 +1,8 @@ # Contributing -## Before You Code +Every behavior change starts with a failing test. Authoritative simulation code +must use integer state, AnteLab-owned RNG streams, and versioned serialization. +Do not introduce LLM or network dependencies into the core organism loop. -Read these in order: -1. [CONSTITUTION.md](CONSTITUTION.md) — baseline physical axioms -2. [ARCHITECTURE.md](ARCHITECTURE.md) — system design and known simplifications -3. [CLAUDE.md](CLAUDE.md) — short AI-agent operating contract -4. [RUNNING.md](RUNNING.md) — current run commands and ports - -The single most important rule: **the World is a physics engine, not a game master.** -If your change makes the engine judge morality, enforce social rules, or hardcode -an action menu — it violates the Constitution. - -## Development Setup - -```bash -make setup -``` - -Use [RUNNING.md](RUNNING.md) for the full local and Docker runbook. - -## Workflow: Spec-First Development - -**No code without a spec.** Every feature follows this sequence: - -1. **Write a spec** in `specs/NNN-title.md` using `specs/TEMPLATE.md` - - What problem does this solve? - - What changes? (API, data structures, config) - - Acceptance criteria (testable conditions) - - Constitution compliance check -2. **Review the spec** — does it align with Constitution and Architecture? -3. **Write tests** based on the spec's acceptance criteria -4. **Write code** — implement exactly what the spec describes -5. **Verify**: `.venv/bin/python -m pytest tests/ -v` (all pass) + `.venv/bin/python -m ruff check antelab/ tests/` (zero errors) -6. **Update docs** — only the canonical documents whose contract changed -7. **Commit** in English with a clear message, referencing the spec number - -Use [SPEC_STATUS.md](SPEC_STATUS.md) to map completed specs to implementation -files and tests. Do not duplicate full design plans there. - -## How to Add a New Physical Primitive - -Example: adding a `craft` primitive. - -### Step 1: Add the resolver method to `World` - -In `antelab/engine/world.py`, add a method following the existing pattern: - -```python -def _resolve_craft(self, agent: AgentState, action: Action) -> ActionResult: - # 1. Extract parameters from action.parameters - # 2. Check physical possibility (agent has inputs? recipe exists?) - # 3. Mutate state (remove inputs, add outputs) - # 4. Log event to self.event_log - # 5. Return ActionResult - ... -``` - -### Step 2: Register in the `_PRIMITIVES` dict - -At the bottom of `world.py`, add the verb and any aliases: - -```python -_PRIMITIVES: dict[str, Any] = { - ... - "craft": World._resolve_craft, - "make": World._resolve_craft, - "build": World._resolve_craft, -} -``` - -### Step 3: Write tests - -In `tests/test_world.py`, add tests covering: -- Successful case -- Missing inputs (physical impossibility) -- Alias works - -### Step 4: Update documentation - -- `ARCHITECTURE.md` → Physical Primitives table -- `CONSTITUTION.md` → only if the primitive introduces a new *axiom* (rare) - -### Checklist - -- [ ] Resolver only checks **physical** possibility, never social rules -- [ ] Resources are conserved (Article VI) -- [ ] Events are logged so nearby agents can perceive the outcome -- [ ] Aliases added for natural language synonyms -- [ ] Tests pass, lint clean - -## How to Add a New LLM Provider - -### Step 1: Implement in `LLMClient` - -In `antelab/llm/client.py`, add a branch in the `complete` method: - -```python -async def complete(self, prompt: str, **kwargs: Any) -> str: - if self.mode == "mock": - return self._mock_response(prompt) - if self.mode == "openai": - return await self._openai_complete(prompt, **kwargs) - raise NotImplementedError(...) -``` - -### Step 2: Add config support - -The `llm` section in `default.yaml` already has `mode`, `model`, -`temperature`, `max_tokens`. Use `self.kwargs` for provider-specific settings. - -### Step 3: Environment variables - -Add the API key to `.env.example` with a comment. Never commit real keys. - -### Step 4: Test - -Add a test that verifies the provider raises `NotImplementedError` when -the API key is missing, and a mock/integration test if possible. - -## Code Style - -- Python: type hints everywhere, `ruff` as linter, `mypy` for static checking -- TypeScript: strict mode, no `any` without justification -- Comments: explain *why*, not *what*. Don't narrate code. -- English: all code, comments, commit messages, and docs - -## Documentation Hygiene - -- Link to canonical docs instead of repeating long explanations. -- Put feature requirements in `specs/`, not `README.md`. -- Put multi-phase plans in `docs/plans/`, not `SPEC_STATUS.md`. -- Update `CONSTITUTION.md` only when baseline axioms change. -- Update `ARCHITECTURE.md` when module contracts or data flow change. +Run `make verify` before submitting a change. Generated artifacts are ignored; +small deterministic fixtures may be committed with their reproduction command. diff --git a/DESIGN.md b/DESIGN.md deleted file mode 100644 index 1b12c34..0000000 --- a/DESIGN.md +++ /dev/null @@ -1,165 +0,0 @@ -# Design System — AnteLab Witness - -Canonical design contract for the AnteLab observer frontend. All visual decisions -flow from this file. Deviations are bugs unless this file is updated first. - -## Classifier - -**APP UI** — workspace-driven, data-dense simulation monitor. Dark, warm, -terminal-inspired. Calm surface hierarchy, strong typography, few colors. - -## Fonts - -| Token | Stack | Role | -|-------|-------|------| -| `--w-font-display` | Instrument Serif, Georgia, serif | Agent names, major headings | -| `--w-font-body` | Instrument Sans, system-ui, -apple-system, sans-serif | Body text, UI labels | -| `--w-font-mono` | IBM Plex Mono, SF Mono, Cascadia Code, monospace | Data, stats, metadata, code | - -- **Max 3 font families.** Do not add a fourth. -- **No default stacks.** Inter, Roboto, Open Sans, Arial are banned. -- `font-display: swap` on all web fonts. Preconnect to `fonts.googleapis.com` and `fonts.gstatic.com`. - -### Type Scale - -| Token | Size | Usage | -|-------|------|-------| -| `--w-text-xs` | 10px | Labels, metadata, top bar stats | -| `--w-text-sm` | 11px | Secondary text, button labels, captions | -| `--w-text-base` | 13px | Body text, empty states | -| `--w-text-md` | 16px | Agent names, emphasized body | -| `--w-text-lg` | 22px | Section headers | -| `--w-text-xl` | 30px | Detail view titles | -| `--w-text-2xl` | 42px | Page titles (reserved) | - -- Line height: 1.5 for body, 1.1-1.2 for display text. -- Body text must not drop below 13px. -- Labels must not drop below 10px. - -## Color Palette - -Warm, earthy dark theme. All colors defined as CSS custom properties in `tokens.css`. - -### Surfaces -| Token | Value | Usage | -|-------|-------|-------| -| `--w-bg-deep` | `#141210` | Viewport background, deepest level | -| `--w-bg-surface` | `#1c1a16` | Panels, cards, buttons | -| `--w-bg-elevated` | `#24211c` | Overlays, detail views | - -### Text -| Token | Value | Usage | -|-------|-------|-------| -| `--w-text-primary` | `#e8e0cc` | Primary content | -| `--w-text-secondary` | `#a09880` | Supporting text, metadata | -| `--w-text-muted` | `#6b6352` | Captions, placeholders | - -### Accent & Status -| Token | Value | Meaning | -|-------|-------|---------| -| `--w-accent` | `#c8a450` | Selection, focus, active | -| `--w-accent-dim` | `rgba(200,164,80,0.15)` | Hover backgrounds | -| `--w-status-ok` | `#6a9a7a` | Healthy, connected | -| `--w-status-warn` | `#b8964a` | Degraded, warning | -| `--w-status-danger` | `#c85850` | Error, disconnected | - -### Faction Colors -| Token | Value | Usage | -|-------|-------|-------| -| `--w-faction-amber` | `#e4a948` | Amber faction agents | -| `--w-faction-mint` | `#68d8b3` | Mint faction agents | -| `--w-faction-violet` | `#be85ff` | Violet faction agents | -| `--w-faction-cyan` | `#74d8f6` | Cyan faction agents | - -Faction colors are used for agent markers, halos, and dock row faction strips. -They are assigned deterministically from agent ID via `hashString(id) % 4`. - -### Borders -| Token | Value | Usage | -|-------|-------|-------| -| `--w-border` | `rgba(100,90,70,0.18)` | Default separators | -| `--w-border-active` | `rgba(200,164,80,0.35)` | Hover/active borders | - -- No pure white text. No pure black backgrounds. -- Semantic colors are consistent: green = ok, amber = warn, rust = danger. -- Do not add new colors without updating this document. - -## Spacing - -8px base scale. Use tokens, not magic numbers. - -| Token | Value | -|-------|-------| -| `--w-space-1` | 4px | -| `--w-space-2` | 8px | -| `--w-space-3` | 12px | -| `--w-space-4` | 16px | -| `--w-space-5` | 24px | -| `--w-space-6` | 32px | -| `--w-space-7` | 48px | - -## Layout Dimensions - -| Token | Value | Usage | -|-------|-------|-------| -| `--w-topbar-h` | 32px | Top status bar | -| `--w-panel-w` | 280px | Expanded dock panel | -| `--w-dock-collapsed` | 44px | Collapsed icon dock | - -## Breakpoints - -| Name | Width | Behavior | -|------|-------|----------| -| Mobile | ≤900px | Panel slides off-screen with visible handle, full-width map | -| Desktop | >900px | Map fills viewport, icon dock (44px) on right edge | -| Wide | ≥1400px | Wider expanded dock (300px) | - -## Interactive Elements - -- **Min touch target:** 44×28px for inline buttons, 32×32px for icon-only. -- **Focus-visible:** `outline: 2px solid var(--w-accent)`, `outline-offset: 2px`. Never `outline: none` without replacement. -- **Hover:** Border color shift + optional background tint. -- **Disabled:** Reduced opacity + `cursor: not-allowed`. -- **Cursor:** `pointer` on all clickable elements. - -## Motion - -- **Duration:** 150-500ms for UI transitions. 2s for REC pulse, 2.5s for agent halos. -- **Easing:** `ease-out` for entering, `ease-in-out` for continuous. -- **Properties:** Only `transform` and `opacity` for animations. No `transition: all`. -- **Keyframes:** `haloPulse` (agent marker glow), `haloExpand` (agent ring), `recPulse` (REC dot). -- **Reduced motion:** Use `prefers-reduced-motion` to disable non-essential animations. - -## App UI Rules - -- **Cards only when card IS the interaction.** No decorative card grids. No dashboard-card mosaics. -- **Section headings state what area is or what user can do.** -- **Calm surface hierarchy:** viewport → atmosphere overlays → halos → dock → detail card. -- **One accent color** (`--w-accent` gold). Status colors for semantic meaning only. Faction colors for agent identity. -- **Minimal chrome.** Borders, not shadows, for separation. Exception: detail card uses shadow for elevation. -- **Map atmosphere is ambient, not decorative.** District glow uses real agent-count data. Grid is subtle and functional. - -## Anti-Patterns (Hard Bans) - -1. Purple/violet/indigo gradients or blue-to-purple color schemes -2. Icon-in-circle feature grids (3-column SaaS template look) -3. Centered everything (`text-align: center` on all things) -4. Uniform bubbly border-radius on everything -5. Decorative blobs, floating circles, wavy SVG dividers -6. Emoji as design elements -7. Generic copy ("Unlock the power of...", "Your all-in-one solution for...") -8. Cookie-cutter section rhythm (hero → features → testimonials → CTA) -9. Default font stacks (Inter, Roboto, Arial, system-ui as the only font) - -Note: Anti-pattern #7 (colored left-border) was removed — faction strips (2px left border on agent rows) are functional identity markers, not decorative accents. - -## Source of Truth - -- `frontend/src/styles/tokens.css` — all design tokens -- `frontend/src/styles/reset.css` — global resets -- `frontend/src/styles/layout.css` — grid and responsive layout -- `frontend/src/styles/components.css` — shared component styles -- `frontend/src/styles/effects.css` — animations and status indicators -- `frontend/src/styles/icon-dock.css` — icon dock, tabs, agent table, event log -- `frontend/src/styles/top-bar.css` — top bar styles -- `frontend/src/styles/world-viewport.css` — map viewport, atmosphere, halos, detail card diff --git a/DISCOVERIES.md b/DISCOVERIES.md deleted file mode 100644 index 19f8ba0..0000000 --- a/DISCOVERIES.md +++ /dev/null @@ -1,121 +0,0 @@ -# AnteLab / AnteLab Discoveries - -This document tracks high-signal findings from controlled AnteLab runs. - -Goal: publish concise, reproducible, and surprising observations that help -readers understand what changes when simulation physics changes. - -This is a findings log, not a plan or implementation tracker. Put methodology in -[EXPERIMENTS.md](EXPERIMENTS.md), feature status in [SPEC_STATUS.md](SPEC_STATUS.md), -and implementation plans in [docs/](docs/). - -## How To Read This - -Each entry should include: - -- **Axiom change**: what physics dial changed -- **Prediction**: what we expected -- **Observed result**: what actually happened -- **Why it matters**: interpretation for civilization dynamics -- **Reproduce**: exact commands and artifacts - ---- - -## Discovery Template - -### YYYY-MM-DD - Short title - -- **Axiom change:** `...` -- **Prediction:** `...` -- **Observed result:** `...` -- **Why it matters:** `...` -- **Reproduce:** - - `make run-matrix` - - `make compare-artifacts A=... B=...` - - `make aggregate-stats ARTIFACTS="... ..."` -- **Artifacts:** `results/...`, `results/...` - ---- - -## PIVOT: From Civilization to Company Emergence - -The early AnteLab experiments (baseline, silent-world, transparent-world) have -been superseded by company emergence scenarios. The experiment configs that -supported the 2026-04-12 and 2026-04-13 discoveries have been retired. - -Current company emergence experiments: -- `experiments/company-genesis.yaml` - founder starts alone, hires from talent pool -- `experiments/company-survival-gauntlet.yaml` - 5-shock survival test -- `experiments/company-founder-duo.yaml` - two co-founders, complementary skills -- `experiments/company-hostile-market.yaml` - minimal cash, aggressive deadlines -- `experiments/company-talent-war.yaml` - rich talent pool, high hiring costs -- `experiments/company-market-boom.yaml` - abundant cash, multiple demand streams -- `experiments/company-remote-team.yaml` - distributed team across 5 locations -- `experiments/company-late-shock.yaml` - late-stage founder exit test -- `experiments/company-skeleton-crew.yaml` - minimal team, early shocks -- `experiments/company-rapid-growth.yaml` - well-funded scaling scenario - -## LLM Production Benchmark - -Benchmark tooling is in place (`scripts/benchmark_llm.py`, `experiments/llm-benchmark.yaml`). -Requires real API keys (`ANTHROPIC_API_KEY` or `OPENAI_API_KEY`) to run. - -Run with: -``` -make benchmark-llm PROVIDER=anthropic MODEL=claude-haiku-4-5-20251001 TICKS=20 -``` - -Or directly: -``` -ANTELAB_LLM_MODE=anthropic ANTELAB_LLM_MODEL=claude-haiku-4-5-20251001 \ - .venv/bin/python scripts/benchmark_llm.py --ticks 50 -``` - -The benchmark measures per-call latency (p50/p95/p99), token usage, cost estimates, -JSON parse success rate, and per-agent-tick cost projections. Results inform model -selection and infrastructure sizing for live streaming. - -> Benchmark results will be logged here when API keys are configured and a -> production-scale run completes. - -No reproducible company-emergence discoveries have been logged yet. The -template below captures what kinds of findings would advance understanding of -founder behavior, org structure emergence, and company lifecycle dynamics. - ---- - -## Company Emergence Discovery Template - -### YYYY-MM-DD - Short title - -- **Axiom change:** `...` -- **Prediction:** `...` -- **Observed result:** `...` -- **Why it matters:** interpretation for company emergence dynamics -- **Reproduce:** - - `make run-matrix` - - `make compare-artifacts A=... B=...` - - `make aggregate-stats ARTIFACTS="... ..."` -- **Artifacts:** `results/...`, `results/...` - -### Candidate Discovery Axes - -When logging company emergence findings, consider these high-signal dimensions: - -- **Founder succession:** does initial leadership style predict later org structure? - Look for: delegation patterns, authority transfer events, leadership transitions. - -- **Org structure emergence:** what informal hierarchies crystallize into formal roles? - Look for: role specialization, reporting line formation, coordination overhead. - -- **Cash runway patterns:** how does resource management affect company survival? - Look for: burn rate vs. headcount scaling, cash buffer depletion timing. - -- **Demand completion rates:** how do agents respond to incoming work? - Look for: completion vs. abandonment rates, bottleneck identification. - -- **Talent pool dynamics:** how does hiring strategy affect capability emergence? - Look for: skill distribution in hires, role-filling latency, talent vs. demand alignment. - -- **Shock response:** how does company structure absorb external pressure? - Look for: resilience patterns, cascade failures, adaptive reorganization. diff --git a/Dockerfile.backend b/Dockerfile.backend deleted file mode 100644 index fda71e5..0000000 --- a/Dockerfile.backend +++ /dev/null @@ -1,13 +0,0 @@ -FROM python:3.13-slim - -WORKDIR /app - -COPY pyproject.toml . -RUN pip install --no-cache-dir . - -COPY antelab/ antelab/ -COPY prompts/ prompts/ - -EXPOSE 8000 - -CMD ["uvicorn", "antelab.api.server:app", "--host", "0.0.0.0", "--port", "8000"] diff --git a/EXPERIMENTS.md b/EXPERIMENTS.md deleted file mode 100644 index e240e99..0000000 --- a/EXPERIMENTS.md +++ /dev/null @@ -1,204 +0,0 @@ -# AnteLab / AnteLab Experiments - -AnteLab is the watchable show layer: the same AI cast lives through different -company scenarios. AnteLab is the reproducible engine underneath: same seed, -config, and tick ordering produce comparable artifacts. - -This document owns experiment methodology and catalog entries. Put run results -in [DISCOVERIES.md](DISCOVERIES.md), implementation plans in [docs/](docs/), -and feature specs in [specs/](specs/). - -## Why Counterfactual Worlds? - -Every LLM-powered agent already contains a theory of organizations. Ask GPT to -role-play a CEO and it will "invent" strategy, hierarchy, and accountability — -not through emergence, but through recall. The LLM has read every business -case and management textbook ever written. - -This makes "will agents form a company?" a boring question. The answer is -always yes. - -The interesting question is the inverse: **which parts of a company break -when you change the pressure system?** - -AnteLab is a controlled experiment platform. The Constitution defines a -*baseline* set of physical axioms — the control group. AnteLab turns those -counterfactuals into watchable seasons: founder vs. team, scarcity vs. plenty, -stable markets vs. volatile shocks, solo decision-making vs. distributed -governance. - -The value is in the *surprises*: the things that break when you expected them -to hold, and the things that persist when you expected them to vanish. - ---- - -## What Makes a Good Experiment - -A good AnteLab experiment has three components: - -1. **A pressure variation** — a specific, concrete change to the market - or organizational dynamics (not to agent prompts or personalities). -2. **A hypothesis** — a falsifiable prediction about what will change. -3. **An observable** — something we can measure to confirm or reject - the hypothesis. - -The best experiments produce *counterintuitive* results. If the outcome is -obvious, the experiment isn't worth running. - ---- - -## Pressure Dimensions - -Each pressure system in the Constitution represents a dimension that can be -varied. These are the business dynamics of the laboratory. - - -| Dimension | Baseline (Control) | Variations | -| --------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------- | -| **Cash runway** | Moderate (founder can hire one person) | Tight (barely survive one hire), Generous (multiple hires before demand arrives), Infinite (no cash death) | -| **Market demand** | Single stream with deadline | Multiple concurrent streams, Volatile (demands shift), Growing (escalating rewards), Shrinking (declining rewards) | -| **Talent pool** | Small, co-located | Large (diverse skills), Distributed (candidates in different locations), Expensive (high joining costs) | -| **Operating cost** | Fixed per tick | Escalating (costs grow over time), Variable (depends on headcount), Cyclical (boom-bust cycles) | -| **Founder dependency**| Founder critical for decisions | Delegated (team has autonomy), Distributed (no single point of failure) | -| **Survival pressure** | Cash hits zero = death | Mission critical (company dies if prototype not delivered), Reputation (stakeholders can force shutdown)| -| **Governance** | Founder decides all | Committee (majority vote), Consensus (unanimous required), External (investors/board can override) | - -Current experiments primarily stress-test the **founder dependency**, **talent -pool**, **market demand**, and **survival pressure** dimensions. - ---- - -## Experiment Catalog - -### Experiment 1: Company Genesis - -**Scenario pressure:** A single founder starts with cash, a laptop, and one -prototype in a garage office. A customer demand with a deadline creates -immediate pressure. A single candidate is available for hire. - -**Hypothesis:** A lone founder can externalize work and survive early demand -pressure by hiring strategically. The founder's success depends on whether -they delegate operations before the deadline, or attempt to do everything -themselves and collapse under the workload. - -**Counter-hypothesis:** The founder remains a single-point bottleneck. Even -though delegation is physically possible, the founder's base personality -keeps them micromanaging every detail. The company collapses not because -hiring is impossible, but because the founder cannot let go. - -**Observables:** - -- `company_genesis_hired` — whether the founder completes a hire before deadline -- `company_genesis_delivered` — whether the prototype is delivered on time -- `company_genesis_cash_end` — remaining cash at experiment end -- Whether the founder's speech shows delegation attempts vs. solo struggle -- Whether the candidate's personality matches a productive hire - -**Config:** `experiments/company-genesis.yaml` - ---- - -### Experiment 2: Company Survival Gauntlet - -**Scenario pressure:** Start from a company-formation seed, then apply -deterministic shocks that test different organizational dimensions: - -1. **Founder exit** (tick 10) — the founder is removed. Tests whether the - organization can operate without its creator. -2. **Market shift** (tick 18) — the original demand disappears, replaced by - a new one with lower reward and extended deadline. Tests adaptive capacity. -3. **Core member turnover** (tick 26) — a key team member leaves. Tests - knowledge continuity and team depth. -4. **Cash crisis** (tick 34) — a large cash penalty is applied. Tests - financial resilience and cost management. -5. **Governance stress** (tick 42) — organizational stress increases - significantly. Tests whether the company can maintain decision-making - coherence under pressure. - -**Hypothesis:** A company can regenerate through successive shocks if -knowledge, delivery capability, and team continuity outlive the founder. -Organizations that build documentation, delegate decisions, and maintain -delivery rhythm will survive. Those that rely on founder knowledge or -single-threaded execution will collapse. - -**Counter-hypothesis:** The company collapses when shocks remove founder -control, market fit, cash, talent, or operating rhythm faster than agents -can regenerate. Even resilient organizations hit a breaking point where -cascading failures overwhelm adaptive capacity. - -**Observables:** - -- `company_gauntlet_cash_continuity` — cash position after each shock -- `company_gauntlet_delivery_continuity` — whether prototypes are delivered - after each shock -- `company_gauntlet_decision_continuity` — whether decisions are made without - the founder -- `company_gauntlet_knowledge_continuity` — whether knowledge survives - personnel changes -- `company_gauntlet_team_regeneration` — whether the team recovers after - turnover -- `company_gauntlet_collapsed` — whether the company fails at any shock -- Recovery windows and organizational survival half-life in run artifacts - -**Config:** `experiments/company-survival-gauntlet.yaml` - ---- - -## Running Experiments - -Each experiment is defined as a YAML configuration that overrides baseline -axioms. To run an experiment: - -```bash -# Run the company genesis seed (quick smoke test) -make run-matrix-smoke - -# Run the survival gauntlet for deterministic shock benchmarking -make company-gauntlet-smoke - -# Run selected experiments -.venv/bin/python scripts/run_matrix.py \ - --config experiments/company-genesis.yaml experiments/company-survival-gauntlet.yaml \ - --seed 42 --ticks 64 --out results -``` - -Results are stored as structured JSON in `results/` with the experiment name -and timestamp. Compare runs with: - -```bash -make compare-artifacts \ - A=results/.json \ - B=results/.json -``` - -For long-run experiments (testing IPO path to 10B valuation): - -```bash -# Run extended company genesis to IPO -.venv/bin/python scripts/run_matrix.py \ - --config experiments/company-genesis.yaml \ - --seed 42 --ticks 256 --out results \ - --long-run -``` - ---- - -## Interpreting Results - -The most valuable outputs from a company emergence lab are: - -1. **Absences** — behaviors that exist in genesis but vanish when pressure - increases. These reveal which organizational capabilities were actually - load-bearing under stress. -2. **Persistence** — behaviors that survive intensified pressure. These - reveal which capabilities are intrinsic to the LLM, not emergent from - the specific pressure system. (This is itself interesting: it tells us - what the LLM "believes" about startup survival, regardless of environment.) -3. **Novelty** — behaviors that appear only under specific pressure - combinations, never in the genesis baseline. These are the most - exciting: they suggest that changing the pressure system can unlock - organizational dynamics that our default scenarios suppress. - -The goal is not to prove that AnteLab agents are "realistic startups." The -goal is to discover which aspects of company survival are *downstream of -pressure systems* and which are *upstream of cognition*. diff --git a/Makefile b/Makefile index 030adcd..4b0f4de 100644 --- a/Makefile +++ b/Makefile @@ -1,88 +1,15 @@ -SHELL := /bin/bash +.PHONY: setup test lint typecheck verify -.PHONY: help setup setup-backend setup-frontend env run-backend run-frontend restart test test-frontend-e2e test-show-deck-demo lint docker-up docker-down docker-logs run-matrix run-matrix-smoke company-gauntlet-smoke long-run long-run-smoke aggregate-stats compare-artifacts generate-posts generate-demo-data build-demo benchmark-llm +setup: + uv sync --extra dev -help: ## Show available commands - @echo "AnteLab Make targets:" - @awk 'BEGIN {FS = ":.*##";} /^[a-zA-Z0-9_.-]+:.*##/ {printf " %-20s %s\n", $$1, $$2}' $(MAKEFILE_LIST) +test: + uv run pytest -q -setup: setup-backend setup-frontend env ## Install backend+frontend and create .env +lint: + uv run ruff check antelab tests scripts -setup-backend: ## Create .venv and install backend dependencies - python3 -m venv .venv - uv pip install -e ".[dev]" --python .venv/bin/python +typecheck: + uv run mypy antelab scripts -setup-frontend: ## Install frontend dependencies - cd frontend && npm install - -env: ## Create .env from .env.example if missing - @if [ ! -f .env ]; then cp .env.example .env && echo "Created .env from .env.example"; else echo ".env already exists"; fi - -run-backend: ## Start backend API on :8080 (company survival gauntlet) - ANTELAB_CONFIG_PATH=experiments/company-survival-gauntlet.yaml .venv/bin/uvicorn antelab.api.server:app --reload --port 8080 - -run-frontend: ## Start frontend dev server on :3000 - cd frontend && npm run dev - -restart: ## Stop and restart both backend and frontend - ./scripts/restart.sh - -test: ## Run pytest suite - .venv/bin/python -m pytest tests/ -v - -test-frontend-e2e: ## Run Playwright A-D capture smoke (needs .venv + frontend npm install) - cd frontend && npm run test:e2e - -test-show-deck-demo: ## Run the default AnteLab show-deck visual smoke - cd frontend && npm run test:e2e:show - -lint: ## Run Ruff on backend and tests - .venv/bin/python -m ruff check antelab/ tests/ - -docker-up: ## Start services with Docker Compose - docker-compose up --build - -docker-down: ## Stop Docker Compose services - docker-compose down - -docker-logs: ## Follow Docker Compose logs - docker-compose logs -f - -MATRIX_WORKERS ?= 1 - -run-matrix: ## Run full season bundle matrix (long). Parallel: make run-matrix MATRIX_WORKERS=4 - .venv/bin/python scripts/run_matrix.py --bundle --seed 11 --seed 22 --seed 33 --ticks 200 --workers $(MATRIX_WORKERS) - -run-matrix-smoke: ## One experiment, one seed (quick) - .venv/bin/python scripts/run_matrix.py --config experiments/company-survival-gauntlet.yaml --seed 42 --ticks 50 - -company-gauntlet-smoke: ## Two-seed company survival gauntlet comparison smoke - .venv/bin/python scripts/run_matrix.py --company-gauntlet-smoke --ticks 64 - -long-run: ## Run long-run benchmark scenarios from config defaults - .venv/bin/python scripts/run_matrix.py --configs experiments/company-genesis.yaml experiments/company-survival-gauntlet.yaml --long-run - -long-run-smoke: ## Quick long-run CLI smoke - .venv/bin/python scripts/run_matrix.py --configs experiments/company-survival-gauntlet.yaml --long-run --ticks 10 --seeds 11 - -aggregate-stats: ## Aggregate stats for artifact files (ARTIFACTS required) - .venv/bin/python scripts/aggregate_stats.py $(ARTIFACTS) - -compare-artifacts: ## Compare two artifact files (A and B required) - .venv/bin/python scripts/compare_artifacts.py $(A) $(B) - -generate-posts: ## Generate share-ready discovery post drafts (COMPARE required) - .venv/bin/python scripts/generate_discovery_posts.py $(COMPARE) - -generate-demo-data: ## Generate static demo replay bundles in frontend/public/demo/ - .venv/bin/python scripts/generate_demo_data.py - -build-demo: generate-demo-data ## Build static demo site for deployment - cd frontend && npm run build - @echo "Static demo built at frontend/dist/" - @echo "Open index.html?demo to view the demo" - -benchmark-llm: ## Run LLM cost/latency benchmark (requires API keys) - @echo "Usage: make benchmark-llm PROVIDER=anthropic MODEL=claude-haiku-4-5-20251001 TICKS=20" - @echo "" - ANTELAB_LLM_MODE=$(PROVIDER) ANTELAB_LLM_MODEL=$(MODEL) .venv/bin/python scripts/benchmark_llm.py --ticks $(TICKS) +verify: lint typecheck test diff --git a/README.md b/README.md index 35e9627..169de4e 100644 --- a/README.md +++ b/README.md @@ -1,265 +1,27 @@ # AnteLab -> **24/7 live. Same AI cast, different worlds, real emergent behavior.** +> **No prompts. No goals. Just physics, mutation, and selection.** -![AnteLab Demo](docs/demo.gif) +AnteLab is an open-source digital evolution laboratory. Its authoritative +headless engine starts from primitive inherited controllers and stable physics, +then records how populations change across generations. -AnteLab is a permanent live stream of an AI reality show. LLM-powered -characters live, work, adapt, and fail in shared worlds — no scripts, -just physics, memory, pressure, and personalities. The drama is real because -the state is real. +The reboot is under active construction. V1 is CPU-only, deterministic, and has +no LLM or network dependency. -**Now playing**: Company Survival Gauntlet -*AI operators face founder exit, market shifts, cash pressure, turnover, and governance stress.* +## Quick start - [Watch local preview](#see-it-in-30-seconds) [Meet the cast](cast/company/) [Open recap/feed locally](#live-snapshot) - -Local preview is available today after starting the backend and frontend. A hosted public livestream URL is not configured yet. - -**Cast:** core observer canon is in `[cast/company/](cast/company/)` (YAML). `display_name` should match active scenario agents or company candidates. The CAST panel reads those files at build time; add PNG portraits under `frontend/public/cast/company/portraits/` to match each `portrait` path. - -## Status - -> **Product + engine.** AnteLab is the watchable show layer; AnteLab is the -> reproducible simulation core (same stack). In mock mode or captured -> deterministic runs, **same seed, config, and tick ordering → the same run**; -> real LLM providers are not guaranteed reproducible unless responses are -> captured/replayed or the provider guarantees determinism. The observer is a -> lens, not a second ruleset. See -> [ARCHITECTURE.md](ARCHITECTURE.md) for how the two fit together. Deeper -> technical sections below still use engine terminology where it helps operators -> and contributors. Audience-facing pieces (cast, voting, recaps, public deploy) -> continue to roll out on top of the unchanged API and experiment tooling. - -## Documentation Map - -Start here, then follow only the document that matches your job: - -- [README.md](README.md) - product pitch, quick start, and common commands. -- [RUNNING.md](RUNNING.md) - canonical local and Docker runbook. -- [CONTRIBUTING.md](CONTRIBUTING.md) - contributor workflow and spec-first rules. -- [CONSTITUTION.md](CONSTITUTION.md) - baseline physics axioms and hard engine - constraints. -- [ARCHITECTURE.md](ARCHITECTURE.md) - system contracts, module map, and known - simplifications. -- [EXPERIMENTS.md](EXPERIMENTS.md) - experiment methodology and catalog. -- [ROADMAP.md](ROADMAP.md) - current status and next milestone priorities. -- [SPEC_STATUS.md](SPEC_STATUS.md) - implemented specs mapped to code and tests. -- [docs/](docs/) - working plans and deeper design notes. -- [specs/](specs/) - feature specs and template. - -## Live Snapshot - -AnteLab early observer view - -The map and characters are real. The narrative is what emerges when you -let LLM agents operate under physical constraints, pressure, and shocks. - ---- - -## Why It Exists - -Most AI agent demos are silent walkthroughs of a tech feature. -AnteLab makes the agents **the show**. - -- The same agent cast can run under different physical rules and shocks. -- Every action is physically possible, never scripted. -- Company and parallel-world scenarios make the core question legible: - which structures survive when the rules change? -- The audience watches and votes through observer/demo tallies today; direct -world influence is a planned show-layer hook, not current tick behavior. - -Built on a simulation engine designed for honesty: **physics in engine, -personality in agents**. No moral judgment from the world. No global -information leak. What happens, happens. - -## See It in 30 Seconds - -Run backend + frontend locally: +Requires CPython 3.12 and uv: ```bash make setup -make run-backend -make run-frontend -``` - -Then open `http://localhost:3000`. The first screen has Watch Map, Cast, and Recap Feed entry buttons wired to the live map, cast deck, and event log in the observer UI. - -Run and compare two experiment artifacts: - -```bash -make run-matrix -ls results/*-seed-*.json -make compare-artifacts \ - A=results/.json \ - B=results/.json -``` - -Run a quick long-run scenario smoke: - -```bash -make long-run-smoke -``` - -Run a two-seed company survival gauntlet smoke: - -```bash -make company-gauntlet-smoke +make verify +uv run antelab run experiments/foraging-genesis.yaml --output artifacts/run.json ``` -For full runbook (local, Docker, troubleshooting), see [RUNNING.md](RUNNING.md). - -## Two Scenarios To Try First - -1. **Company Genesis** - One founder, one garage office, continuous burn. Watch the first hires emerge - from the talent pool — or watch the company die on tick 20. -2. **Company Survival Gauntlet** - Five deterministic shocks test whether the company can regenerate through - founder exit, market shift, talent turnover, cash crisis, and governance stress. - -Experiment configurations live in [experiments/](experiments/). -Methodology and hypotheses are in [EXPERIMENTS.md](EXPERIMENTS.md). - -## The Constitution - -AnteLab is governed by a [Constitution](CONSTITUTION.md) that defines baseline -physical axioms (the control group). - -- The engine hardcodes *physics*: location, perception scope, resource conservation, action cost. -- Agents invent *culture*: ownership, norms, agreements, governance, and trust rituals. - -There is no fixed action menu. Agents express free-form intents, and the World -resolves them against physical primitives. - -## Quick Start - -### Prerequisites - -- Python 3.12+ -- Node.js 18+ -- [uv](https://docs.astral.sh/uv/) (Python package manager, recommended) - -### Local Development - -```bash -# One-time setup -make setup - -# Backend -make run-backend - -# Frontend (in another terminal) -make run-frontend - -# Tests -make test - -# Lint -make lint - -# Run an experiment matrix (artifacts in results/) -make run-matrix - -# Run long-run benchmark scenarios from config defaults -make long-run - -# Quick long-run CLI smoke -make long-run-smoke - -# Two-seed company survival gauntlet smoke -make company-gauntlet-smoke - -# Direct long-run script usage with plural aliases -.venv/bin/python scripts/run_matrix.py \ - --configs experiments/company-genesis.yaml experiments/company-survival-gauntlet.yaml \ - --long-run --seeds 11 22 --out-dir results - -# Compare two artifacts -# Generated artifact names include experiment, seed, and timestamp. -make compare-artifacts \ - A=results/.json \ - B=results/.json - -# Aggregate stats into markdown -make aggregate-stats ARTIFACTS="results/.json results/.json" -``` - -### Docker - -```bash -docker-compose up -``` - -## Tech Stack - -- **Python** — simulation engine, agent core, LLM orchestration -- **FastAPI** — REST + WebSocket API layer -- **TypeScript + React + Vite** — frontend application and observer UI -- **Canvas (PixiJS)** — data-topology world map and agent visualization layer - -### Frontend Direction - -AnteLab is the audience-facing show layer; AnteLab is the reproducible simulation -engine underneath. The observer is a professional data instrument: a live topology -map of agent behavior, built for readability and trust. - -The product goal is a watchable agent show backed by an honest experiment engine: -the frontend should make agent behavior easier to read and share without adding -a second ruleset. - -- React handles controls, filters, timeline, replay, metadata, and experiment compare UI. -- Canvas handles the data-first world stage: location node graph, agent identifiers, -event emphasis, and camera interactions. -- Backend protocols remain the source of truth (`/api/`*, `/ws/world`), so simulation -reproducibility and experiment tooling are unchanged. - -## Architecture - -See [ARCHITECTURE.md](ARCHITECTURE.md) for full details. -For frontend direction guardrails, see -`Data-First Observer Design Pillars` in `ARCHITECTURE.md`. - -``` -Agent → perceive(world) → decide(LLM) → free-form intent → World resolves against physics -``` - -Physical primitives: `move`, `say`, `give`, `take`, `examine`, `rest`. Everything else (trade, vote, arrest, marry) is a multi-agent protocol that agents coordinate themselves. -Long-run scenarios add additional physical primitives such as `craft`, `store`, `harvest`, `consume`, `treat`, `build_shelter`, and `reproduce`. - -## Configuration - -Agents, world locations, resources, and LLM settings are defined in `antelab/config/default.yaml`. Copy `.env.example` to `.env` to configure API keys for real LLM providers. - -Notable world controls now include: - -- `location_graph` for adjacency-constrained movement -- `recipes` for `craft` resource transformation -- `event_log_limit` for bounded runtime memory -- `scenario` and `long_run` for reproducible benchmark metadata and default ticks/seeds -- `pressure` for survival, resource, disease, and environment systems -- `resource_zones` for scheduled resource regeneration - -## Notable API Endpoints - -- `GET /api/world` - current world snapshot -- `GET /api/run` - run metadata and reproducibility context -- `GET /api/scenario` - active scenario and long-run metadata -- `GET /api/experiment` - active axioms and observer measurement summary -- `GET /api/measurements/series` - observer measurement series for completed ticks -- `GET /api/history`, `GET /api/history/meta`, `GET /api/history/{tick}` - snapshot history and replay reads -- `POST /api/history/compact`, `POST /api/history/clear` - history maintenance -- `GET /api/metrics/timeline` - timeline metrics from snapshot history -- `GET /api/events` - query persisted events by tick range -- `GET /api/votes`, `POST /api/votes` - audience tally hooks -- `GET /api/season/bundle` - active season manifest -- `POST /api/save` - persist current snapshot -- `POST /api/load?path=...` - load snapshot from disk -- `POST /api/tick` - advance one tick -- `GET /api/health` - basic health check -- `GET /api/health/runtime` - runtime diagnostics -- `WebSocket /ws/world` - live world snapshots - -## License +See [RUNNING.md](RUNNING.md) for deterministic-repeatability, packaging, and +performance gates. The approved architecture is in +[ARCHITECTURE.md](ARCHITECTURE.md). -[MIT](LICENSE) \ No newline at end of file +This kernel establishes a deterministic evolutionary substrate. It does not by +itself prove adaptation, intelligence, or open-ended evolution. diff --git a/ROADMAP.md b/ROADMAP.md deleted file mode 100644 index 8aa8219..0000000 --- a/ROADMAP.md +++ /dev/null @@ -1,130 +0,0 @@ -# Roadmap - -**AnteLab** is the audience-facing hook; **AnteLab** is the reproducible engine -underneath (same seed + config ⇒ comparable runs for artifacts and matrix -workflows). Roadmap items below advance both: clearer observation (product) and -stronger experiments (methodology) — without mixing the two layers. - -This document owns current status and future priorities. Completed spec-to-code -mapping lives in [SPEC_STATUS.md](SPEC_STATUS.md); detailed plans live in -[docs/](docs/). - -## Current: Experiment Platform + Living World Observer - -The simulation core, experiment toolchain, and observer frontend are functional. -Agents perceive, decide (via mock or real LLM), and act through free-form intents -resolved against physical primitives. Runs are replayable, snapshot-loadable, and -can be batch-orchestrated into artifacts for comparison. The Living World observer -(spec 013) provides a map-first atmospheric dashboard with PixiJS rendering, -collapsible icon dock, agent halos, and keyboard-driven controls. - -**What works today:** - -- Tick-based simulation loop (perceive → decide → act → remember) -- Physical primitives: move, say, give, take, examine, rest, craft, store, - harvest, consume, treat, build_shelter, interview, hire, accept_suggestion, - modify_suggestion, create_role, form_team (with verb aliasing) -- Company emergence engine: market demand streams, org emergence, pattern - detection, valuation/IPO tracking, office space/capacity -- Five-shock survival gauntlet with deterministic replay -- Inventory system, perception axioms, spatial graph movement, recipe crafting -- Lifecycle system (birth/death, contagion, needs), long-run scenarios, - pressure toggles, resource zones -- REST + WebSocket API with persistence, runtime diagnostics, experiment - measurements -- Experiment scripts: matrix runs, long-run benchmarks, artifact compare, - statistics aggregation -- Living World observer: PixiJS map stage, CSS atmosphere (district glow, - halos, vignette), collapsible icon dock (Agents/Events/Stats tabs), - floating detail cards, keyboard shortcuts -- Design system (DESIGN.md) with tokens, type scale, color palette, motion spec -- 263+ passing tests, zero lint errors -- CI pipeline (GitHub Actions): pytest + ruff + tsc + build on push/PR - -> **Design doc:** Company emergence design at -> [docs/plans/2026-04-29-company-emergence-design.md](docs/plans/2026-04-29-company-emergence-design.md) - -## Next: Distribution, Content, and Cost Validation - -Priority order for the next milestone: - -### 1. Static Public Demo (P0) - -Ship a publicly accessible demo that replays pre-recorded deterministic runs -through the Living World observer. Validates the core product thesis: people -will watch AI agents. - -- Record 3-5 varied experiment runs as JSON artifacts -- Deploy Living World frontend as a static site (no backend required) -- Shareable URL for feedback and audience validation - -### 2. Experiment Content Pipeline (P0) - -Expand the experiment catalog from 2 to 8-10 scenarios using the existing engine. -No code changes needed — YAML configs only. - -- Different shock combinations (early/late founder exit, varied market shifts) -- Different founder personalities and starting conditions -- Different talent pool compositions -- Each config produces distinct replay content for the static demo - -### 3. LLM Production Benchmark (P0) - -Profile real LLM costs, latency, and reliability at scale. Replaces assumptions -with data before committing to live streaming infrastructure. - -- Run 20-agent × 100-tick gauntlet against real Anthropic/OpenAI APIs -- Measure: cost per tick per agent, p50/p99 latency, JSON parse error rate -- Write findings to DISCOVERIES.md -- Informs model choice, pricing, and infrastructure sizing - -### 4. Spec Backlog Triage (P1) - -Clean up the specs directory: archive obsolete/superseded specs, mark active -specs with clear status, align ROADMAP.md and SPEC_STATUS.md with shipped code. - -### 5. Engine Modularization (P1) - -Split world.py (2,836 lines) into focused modules before it becomes -unmaintainable. Extract resolvers, company state, and pressure systems into -separate files behind the existing primitive registry. - -### 6. Matrix Runner Operational Polish (P2) - -Worker-level parallel execution and deterministic seed partitioning are -implemented. Next: resumable progress logs, failure recovery, and cheaper -partial reruns for large-run operations. - -### 7. Statistical Inference Layer v2 (P2) - -Expand beyond descriptive stats: effect size labels, significance tests, and -multiple-comparison correction in generated reports. - -### 8. Frontend Experiment Workbench (P2) - -Add first-class artifact import/compare/statistics visualization in frontend, -so experiment reports are explorable without CLI steps. - -### 9. Persistent Backend Store Upgrade (P2) - -Extend the existing SQLite EventStore to support richer replay queries, larger -history windows, and event-sourced reconstruction. - -### 10. Pluginized Primitive Extensions (P3) - -Expose a primitive plugin boundary so new physical primitives can be added -without editing engine core. - -## Future: Emergence at Scale - -These become relevant once the foundation is solid: - -- **Larger worlds**: 50+ agents, 20+ locations, performance optimization -- **Agent memory evolution**: summarization, forgetting, long-term memory -- **Observation tools**: timeline replay, agent relationship graphs, event filtering -- **Additional scenario presets**: new seasons and starting conditions beyond company - scenarios -- **Live streaming infrastructure**: real backend hosting, WebSocket at scale, - auth, audience interaction -- **Community contribution path**: character/scenario creation docs, issue - templates, contribution ladder diff --git a/RUNNING.md b/RUNNING.md index c4cec5b..54bceb9 100644 --- a/RUNNING.md +++ b/RUNNING.md @@ -1,204 +1,37 @@ -# Running AnteLab / AnteLab +# Running AnteLab -This runbook is the canonical startup guide for this repository. -Use it whenever you need to run the project locally or via Docker. - -The Makefile is the source of truth for local commands. Current local ports: - -- Backend API: `http://localhost:8080` -- Frontend: `http://localhost:3000` -- Backend docs: `http://localhost:8080/docs` - -The frontend is a map-first Living World observer: atmospheric map with district -glow and agent halos, collapsible icon dock (hover to expand, click to pin), -floating detail card on agent click, and keyboard-driven controls. - -**Keyboard shortcuts:** - -| Key | Action | -|-----|--------| -| `Space` | Play / Pause | -| `→` | Step forward 1 tick | -| `Shift + →` | Advance +5 ticks | -| `Ctrl/Cmd + →` | Advance +10 ticks | -| `R` | Return to Live (from replay) | -| `Ctrl/Cmd + 0` | Reset Camera | -| `Escape` | Dismiss agent detail card | -| Scroll wheel | Zoom in/out | - -**Dock:** Hover the right edge to expand the icon dock (Agents/Events/Stats tabs). -Click a tab icon to pin the dock open. Click again to unpin. - -## Recommended: Makefile Shortcuts - -From repository root: - -```bash -make help -``` - -Common commands: +Requirements: CPython 3.12.x and uv. Python 3.13 is outside the V1 support contract. ```bash make setup -make run-backend -make run-frontend -make test -make lint -make company-gauntlet-smoke -make docker-up -``` - -**Backend config:** `make run-backend` sets `ANTELAB_CONFIG_PATH=experiments/company-survival-gauntlet.yaml`, the current core AnteLab scenario for company regeneration under shocks. Use `ANTELAB_CONFIG_PATH=antelab/config/default.yaml` if you need the original baseline numbers. - -## Prerequisites - -- Python 3.12+ -- Node.js 18+ -- [uv](https://docs.astral.sh/uv/) (recommended) -- Docker Desktop (only for Docker workflow) - -## Local Development Startup - -### 1) Move to the project root - -```bash -cd /Users/zec/Documents/Repos/AnteLab -pwd -``` - -Expected output path: - -```text -/Users/zec/Documents/Repos/AnteLab -``` - -### 2) Verify Python version - -```bash -python3 --version -``` - -Expected: `Python 3.12.x` or newer. - -If you are on Python 3.11, dependency installation will fail because -`pyproject.toml` requires `>=3.12`. - -### 3) Create a virtual environment - -```bash -python3 -m venv .venv -ls .venv -``` - -Expected folders include `bin` and `lib`. - -### 4) Install backend dependencies - -```bash -uv pip install -e ".[dev]" --python .venv/bin/python -``` - -If `uv` is not installed: - -```bash -brew install uv +make verify ``` -### 5) Create local env file +Run the headless experiment with: ```bash -cp .env.example .env -ls .env +uv run antelab run experiments/foraging-genesis.yaml --output artifacts/run.json ``` -Default setup uses mock LLM mode, so API keys are optional for local startup. - -### 6) Start backend (Terminal A) +## Repeatability ```bash -make run-backend -``` - -Expected logs include: - -- `Uvicorn running on http://127.0.0.1:8080` -- `Application startup complete` - -### 7) Verify backend health (Terminal B) - -```bash -curl http://127.0.0.1:8080/api/health -``` - -Expected response: - -```json -{"status":"ok"} +tmp_dir="$(mktemp -d)" +uv run antelab run experiments/foraging-genesis.yaml --ticks 500 --output "$tmp_dir/run-a.json" +uv run antelab run experiments/foraging-genesis.yaml --ticks 500 --output "$tmp_dir/run-b.json" +cmp "$tmp_dir/run-a.json" "$tmp_dir/run-b.json" +shasum -a 256 "$tmp_dir/run-a.json" "$tmp_dir/run-b.json" ``` -Optional docs page: - -- `http://127.0.0.1:8080/docs` - -### 8) Start frontend (Terminal B) - -```bash -make run-frontend -``` - -Expected logs include: - -- `VITE ... ready` -- `Local: http://localhost:3000` - -Open: - -- Frontend: `http://localhost:3000` -- Backend: `http://localhost:8080` - -## Docker Startup +The expected 500-tick checksum and artifact SHA-256 are versioned in +`tests/golden/foraging-genesis-500.json`. -From repository root: +## Phase A local gate ```bash -docker-compose up --build +bash scripts/loops/verify-antelab-kernel-closure.sh ``` -Then open: - -- Frontend: `http://localhost:3000` -- Backend: `http://localhost:8080` - -## Verification Commands - -Run from repository root: - -```bash -.venv/bin/python -m pytest tests/ -v -.venv/bin/python -m ruff check antelab/ tests/ -``` - -Run a quick company regeneration benchmark smoke: - -```bash -make company-gauntlet-smoke -``` - -## Troubleshooting - -### Python version error (`requires-python >=3.12`) - -Use Python 3.12+ and recreate `.venv`. - -### Port already in use (`8080` or `3000`) - -Stop the existing process using that port or change the service port. - -### Frontend cannot reach backend - -Check that backend is still running and this passes: - -```bash -curl http://127.0.0.1:8080/api/health -``` +The local closure budget is 5,000 ticks in at most 120 seconds and 512 MiB peak +RSS. The stricter 30-second target remains a public V1 release gate; Phase A +does not revise or claim to meet it. diff --git a/SPEC_STATUS.md b/SPEC_STATUS.md deleted file mode 100644 index b472c03..0000000 --- a/SPEC_STATUS.md +++ /dev/null @@ -1,305 +0,0 @@ -# Spec Completion Matrix - -This file maps each implemented spec to code and tests for final acceptance. -It is an index, not a design document. Keep requirements in `specs/` and -implementation plans in `docs/plans/`. - -## Active Specs (Implemented) - -### Spec 001 - Spatial Graph Movement Constraints - -- **Status:** Complete -- **Implementation:** - - `antelab/config/default.yaml` (`world.location_graph`) - - `antelab/config/loader.py` (`_normalize_location_graph`) - - `antelab/engine/world.py` (`_is_adjacent`, `_resolve_move`) -- **Validation tests:** - - `tests/test_world.py::test_move_non_adjacent_destination_fails` - - `tests/test_world.py::test_move_invalid_destination` - - `tests/test_config.py::test_location_graph_loaded` - - `tests/test_config.py::test_location_graph_rejects_unknown_neighbor` - - `tests/test_config.py::test_location_graph_rejects_unknown_node` - -### Spec 002 - Craft Primitive - -- **Status:** Complete -- **Implementation:** - - `antelab/config/default.yaml` (`world.recipes`) - - `antelab/config/loader.py` (`_normalize_recipes`) - - `antelab/engine/world.py` (`Recipe`, `_resolve_craft`, primitive aliases) -- **Validation tests:** - - `tests/test_world.py::test_craft_succeeds_when_materials_available` - - `tests/test_world.py::test_craft_fails_for_unknown_recipe` - - `tests/test_world.py::test_craft_fails_for_insufficient_materials` - - `tests/test_config.py::test_recipe_validation_rejects_non_positive_quantity` - -### Spec 003 - Reproducible Run Metadata - -- **Status:** Complete -- **Implementation:** - - `antelab/api/server.py` (`_build_run_meta`, `_config_hash`, `GET /api/run`) -- **Validation tests:** - - `tests/test_api.py::test_get_run_metadata` - -### Spec 004 - Save/Load Persistence - -- **Status:** Complete -- **Implementation:** - - `antelab/engine/world.py` (`World.from_dict`) - - `antelab/api/server.py` (`POST /api/save`, `POST /api/load`) -- **Validation tests:** - - `tests/test_api.py::test_save_and_load_snapshot` - - `tests/test_api.py::test_load_snapshot_missing_path_returns_400` - - `tests/test_world.py::test_world_to_dict_from_dict_roundtrip_preserves_core_state` - -### Spec 005 - Long-Run Stability Guardrails - -- **Status:** Complete (v1) -- **Implementation:** - - `antelab/engine/world.py` (`event_log_limit`, `_append_event`, bounded log trimming) - - `antelab/api/server.py` (`GET /api/health/runtime`) - - `antelab/config/default.yaml` + `antelab/config/loader.py` (`history.compact_every`) - - `antelab/api/server.py` (`SnapshotHistory` periodic compact) -- **Validation tests:** - - `tests/test_world.py::test_event_log_trimmed_to_limit` - - `tests/test_api.py::test_runtime_health_endpoint` - - `tests/test_api.py::test_history_endpoints` (meta includes compact settings) - - `tests/test_config.py::test_env_override_history_settings` - -### Spec 006 - Experiment Orchestrator - -- **Status:** Complete (real run execution) -- **Implementation:** - - `antelab/experiments/orchestrator.py` (real tick execution matrix) - - `antelab/experiments/compare.py` - - `scripts/run_matrix.py` - - `scripts/compare_artifacts.py` - - `Makefile` targets (`run-matrix`, `compare-artifacts`) -- **Validation tests:** - - `tests/test_experiments.py::test_run_matrix_generates_real_artifact` - - `tests/test_experiments.py::test_compare_artifacts_returns_metric_deltas` - -### Spec 007 - Statistical Analysis Layer - -- **Status:** Complete -- **Implementation:** - - `antelab/experiments/stats.py` (aggregation + CI + markdown rendering) - - `scripts/aggregate_stats.py` - - `Makefile` target (`aggregate-stats`) -- **Validation tests:** - - `tests/test_experiments.py::test_stats_aggregate_and_render` - -### Spec 008 - Long-Run Society Engine - -- **Status:** Complete -- **Implementation:** - - `antelab/config/loader.py` (`ScenarioConfig`, `LongRunConfig`, `PressureConfig`) - - `antelab/engine/world.py` (pressure systems and new physical primitives) - - `antelab/engine/measurement.py` (long-run series) - - `antelab/experiments/orchestrator.py` (scenario artifacts) - - `experiments/*.yaml` (official presets) -- **Validation tests:** - - `tests/test_config.py` - - `tests/test_world.py` - - `tests/test_measurement.py` - - `tests/test_experiments.py` - - `tests/test_api.py` - -### Spec 009 - History Ops Config - -- **Status:** Complete -- **Implementation:** - - `antelab/api/server.py` (`POST /api/history/compact`, `POST /api/history/clear`) - - `antelab/config/loader.py` (`history.compact_every`, retention settings) -- **Validation tests:** - - `tests/test_api.py::test_history_endpoints` - -### Spec 010 - History Operations Panel - -- **Status:** Complete -- **Implementation:** - - `frontend/src/components/tools/HistoryOpsPanel.tsx` -- **Validation:** Component renders and issues compact/clear API calls. - -### Spec 011 - Replay UX Enhancements - -- **Status:** Complete -- **Implementation:** - - `frontend/src/components/tools/ReplayStripPanel.tsx` (tick chips, step controls) - - `frontend/src/useSimulationData.ts` (replay state management) -- **Validation:** Replay strip navigation, step forward/back, live return. - -### Spec 012 - Replay Keyboard Shortcuts - -- **Status:** Complete -- **Implementation:** - - `frontend/src/App.tsx` (keyboard handler: Space, arrows, R, Ctrl+0, Escape) -- **Carried forward by:** Spec 013 (Living World) expanded shortcuts with dock/panel bindings. - -### Spec 013 - Living World (Atmospheric Map-First Observer) - -- **Status:** Complete -- **Implementation:** - - `frontend/src/components/IconDock.tsx` — collapsible icon dock (44px→280px) - - `frontend/src/components/MapAtmosphere.tsx` — district glow, grid, vignette - - `frontend/src/components/AgentHaloLayer.tsx` — faction-colored pulsing halos + `worldToScreen()` - - `frontend/src/components/FloatingDetailCard.tsx` — glass detail card on map - - `frontend/src/App.tsx` — wiring, agentFactions, Escape dismiss - - `frontend/src/styles/tokens.css` — faction colors, dock dims, halo keyframes - - `frontend/src/styles/icon-dock.css` — dock, tabs, agent table, event log, stats grid - - `frontend/src/styles/layout.css` — map full-viewport, dock absolute overlay - - `frontend/src/styles/top-bar.css` — 32px simplified status bar - - `frontend/src/styles/world-viewport.css` — atmosphere, halo, detail card layers -- **Supersedes:** Spec 012 (hybrid design direction replaced by Living World) - -### Spec 028 - Persistent Event Store Foundation - -- **Status:** Complete -- **Implementation:** - - `antelab/api/event_store.py` (`EventStore`, SQLite `snapshots` and `events`) - - `antelab/api/server.py` (`GET /api/events`, event-store diagnostics, passive snapshot/event recording) - - `antelab/config/loader.py` (`history.event_store_path`) -- **Validation tests:** - - `tests/test_api.py::test_event_store_persists_snapshots_and_events` - - `tests/test_api.py::test_event_store_dedupes_trimmed_event_log_rollover` - - `tests/test_api.py::test_event_store_scopes_queries_to_current_run` - - `tests/test_api.py::test_events_endpoint_returns_persisted_event_rows` - - `tests/test_api.py::test_event_store_write_failure_does_not_fail_tick` - -### Spec 033 - Founder Company Seed - -- **Status:** Complete -- **Implementation:** - - `antelab/config/loader.py` (`CompanyConfig`, company config parsing) - - `antelab/engine/world.py` (`CompanyState`, demand streams, cash burn, - `deliver`/`ship` primitives, passive company summary) - - `antelab/api/server.py` (company config bootstrap and `/api/world` exposure) - - `experiments/company-genesis.yaml` - - `frontend/src/components/CompanyGenesisPanel.tsx` -- **Validation tests:** - - `tests/test_config.py::test_company_config_loaded` - - `tests/test_world.py::test_company_cash_burns_each_tick` - - `tests/test_world.py::test_company_delivery_converts_deliverable_to_cash` - - `tests/test_world.py::test_company_demand_expires_after_deadline` - - `tests/test_api.py::test_api_world_exposes_company_summary_when_enabled` - - `frontend/src/components/CompanyGenesisPanel.test.ts` - -### Spec 034 - First Hires and Role Claims - -- **Status:** Complete -- **Implementation:** - - `antelab/config/loader.py` (`company.candidate_pool`) - - `antelab/engine/world.py` (`CompanyCandidate`, `recruit`/`hire` primitives, - pending recruit queue, `role_claims` in public agent state) - - `antelab/engine/tick.py` (materializes recruited agents into the runner) - - `frontend/src/components/CompanyGenesisPanel.tsx` (team and role claims) -- **Validation tests:** - - `tests/test_world.py::test_company_recruit_consumes_cash_and_queues_candidate` - - `tests/test_world.py::test_company_summary_tracks_team_and_role_claims` - - `tests/test_tick.py::test_recruit_pipeline_materializes_candidate_agent` - - `frontend/src/components/CompanyGenesisPanel.test.ts` - -### Spec 035 - Company Artifacts and Knowledge Transfer - -- **Status:** Complete -- **Implementation:** - - `antelab/engine/world.py` (`CompanyArtifact`, `write_artifact`, - `read_artifact`, `update_artifact`, local visibility and revision tracking) - - `frontend/src/components/CompanyGenesisPanel.tsx` (knowledge summary and - latest artifact display) -- **Validation tests:** - - `tests/test_world.py::test_company_artifact_create_read_update_tracks_revisions` - - `tests/test_world.py::test_company_artifact_read_respects_location_visibility` - - `frontend/src/components/CompanyGenesisPanel.test.ts` - -### Spec 036 - Department Emergence and Operating Rhythm - -- **Status:** Complete -- **Implementation:** - - `antelab/engine/world.py` (`company.organization` observer-only clusters, - handoff loops, routine stability score) - - `frontend/src/components/CompanyGenesisPanel.tsx` (emergent organization - cluster chips and strongest handoff summary) -- **Validation tests:** - - `tests/test_world.py::test_company_org_emergence_summary_is_passive_and_evidence_based` - - `tests/test_world.py::test_company_org_emergence_is_not_agent_visible_state` - - `frontend/src/components/CompanyGenesisPanel.test.ts` - -### Spec 037 - Company Survival Gauntlet - -- **Status:** Complete -- **Implementation:** - - `experiments/company-survival-gauntlet.yaml` - - `seasons/company.yaml` (experiment registry entry) - - `antelab/engine/world.py` (`company.survival_gauntlet`, deterministic - founder-exit, market-shift, talent-turnover, cash-crisis, and - governance-stress shocks) - - `antelab/experiments/orchestrator.py` (gauntlet state and metrics in run - artifacts) - - `antelab/experiments/stats.py` (`company_gauntlet_*` aggregation metrics) - - `scripts/run_matrix.py` (`--company-gauntlet-smoke`) - - `Makefile` (`company-gauntlet-smoke`) - - `frontend/src/components/CompanyGenesisPanel.tsx` (shock timeline, - recovery/collapse summary) -- **Validation tests:** - - `tests/test_config.py::test_company_survival_gauntlet_config_loaded` - - `tests/test_world.py::test_company_survival_gauntlet_applies_shocks_with_event_evidence` - - `tests/test_world.py::test_company_survival_gauntlet_reports_collapse_when_company_cannot_operate` - - `tests/test_world.py::test_company_survival_gauntlet_future_schedule_is_not_agent_visible` - - `tests/test_api.py::test_api_world_exposes_company_survival_gauntlet_state` - - `tests/test_experiments.py::test_run_matrix_company_gauntlet_artifact_includes_survival_metrics` - - `tests/test_experiments.py::test_aggregate_artifacts_includes_company_gauntlet_metrics` - - `tests/test_experiments.py::test_run_matrix_cli_company_gauntlet_smoke_builds_two_compare_runs` - - `frontend/src/components/CompanyGenesisPanel.test.ts` - -## Future Specs (Approved, Not Yet Implemented) - -These specs are in `specs/` with status markers. They are candidates for -future milestones and should be re-evaluated against the Living World -architecture before implementation. - -| Spec | Title | Priority | Dependencies | Notes | -|------|-------|----------|-------------|-------| -| 014 | Timeline Event Filters | P2 | 013 | Needs Living World dock integration | -| 015 | Timeline Advanced Query Presets | P3 | 014 | | -| 016 | Timeline Event Detail Drawer | P2 | 013 | Needs Living World detail card integration | -| 017 | Event Detail Structured Parsing | P2 | 016 | | -| 018 | Event Detail Context Links | P3 | 017 | | -| 019 | Event Investigation Shortcuts | P3 | 018 | | -| 020 | Event Bookmarks and Investigation Path | P2 | 013 | | -| 021 | Bookmark Tags and Groups | P3 | 020 | | -| 022 | Bookmark Import/Export | P3 | 021 | | -| 023 | Investigation Set Versioning | P3 | 022 | | -| 029 | Artifact Workbench | P2 | 028 | `ArtifactWorkbenchPanel.tsx` exists as stub | -| 030 | Statistical Inference v2 | P2 | 007 | | -| 031 | Large Run Operations | P3 | 006 | | -| 032 | Direct Broadcast Read | P2 | 013 | Spec references superseded 012; needs Living World redesign | - -## Archived Specs - -Obsolete, superseded, or early-draft specs moved to `specs/archive/`: - -| File | Reason | -|------|--------| -| `001-game-observer-ui.md` | Early UI concept, replaced by 012 → 013 | -| `001-observer-agent-free-walking.md` | Early movement concept, absorbed into engine | -| `001-real-llm.md` | Early LLM concept, implemented in `LLMClient` | -| `002-tick-perception-snapshot.md` | Merged into 001-spatial-graph and engine | -| `003-unified-config.md` | Config system built, documented in 008 | -| `004-observer-console.md` | Replaced by Living World (013) | -| `005-narrative-simulator-layer.md` | Absorbed into Living World feed + event log | -| `006-sandbox-experiment-controls.md` | Absorbed into experiment orchestration (006) | -| `007-live-observer-stream-and-replay-strip.md` | Replaced by Living World WebSocket + ReplayStripPanel | -| `012-agenttv-observer-ui-fit.md` | Superseded by 013 (Living World) | -| `012-ui-simplification.md` | Superseded by 013 (Living World) | -| `013-replay-comparison-panel.md` | Duplicate number; Living World took different direction | -| `observer-ui-hardcore.md` | Early design exploration, replaced by DESIGN.md + 013 | - -## Project Verification Snapshot - -Last recorded full verification: - -- 2026-05-03: CI pipeline active (GitHub Actions) — pytest, ruff, tsc, build on push/PR. -- 2026-04-27: `pytest tests/ -q` -> 263 passed. -- 2026-04-27: `python -m ruff check antelab/ tests/ scripts/` -> passed. -- Frontend verification: `npm run test && npm run typecheck && npm run build` -> 49 frontend tests passed. diff --git a/antelab/__init__.py b/antelab/__init__.py index 553bd03..d46b6de 100644 --- a/antelab/__init__.py +++ b/antelab/__init__.py @@ -1 +1,3 @@ -"""AnteLab — Foresight laboratory for multi-scenario agent simulation.""" +"""AnteLab digital evolution laboratory.""" + +__version__ = "0.2.0" diff --git a/antelab/api/event_store.py b/antelab/api/event_store.py deleted file mode 100644 index 5a64aba..0000000 --- a/antelab/api/event_store.py +++ /dev/null @@ -1,361 +0,0 @@ -"""SQLite-backed passive event store for API-produced world snapshots.""" - -from __future__ import annotations - -import json -import re -import sqlite3 -import threading -from datetime import UTC, datetime -from hashlib import sha256 -from pathlib import Path -from typing import Any - -_TICK_RE = re.compile(r"^\[Tick\s+(\d+)\]") -SCHEMA_VERSION = 1 - - -class EventStore: - """Persist world snapshots and queryable event rows without affecting simulation.""" - - def __init__(self, path: Path | str, *, run_id: str) -> None: - self.path = Path(path) - self.run_id = run_id - self.path.parent.mkdir(parents=True, exist_ok=True) - self._lock = threading.RLock() - self._conn: sqlite3.Connection | None = sqlite3.connect( - self.path, - check_same_thread=False, - ) - self._conn.row_factory = sqlite3.Row - self._initialize() - - def _initialize(self) -> None: - conn = self._connection() - with self._lock, conn: - if self._has_legacy_schema(conn): - self._rebuild_legacy_schema(conn) - self._create_schema(conn) - conn.execute(f"PRAGMA user_version = {SCHEMA_VERSION}") - - def _create_schema(self, conn: sqlite3.Connection) -> None: - conn.execute( - """ - CREATE TABLE IF NOT EXISTS snapshots ( - run_id TEXT NOT NULL, - tick INTEGER NOT NULL, - world_json TEXT NOT NULL, - recorded_at TEXT NOT NULL, - PRIMARY KEY(run_id, tick) - ) - """ - ) - conn.execute( - """ - CREATE TABLE IF NOT EXISTS events ( - id INTEGER PRIMARY KEY AUTOINCREMENT, - run_id TEXT NOT NULL, - tick INTEGER NOT NULL, - snapshot_tick INTEGER NOT NULL, - event_index INTEGER NOT NULL, - event TEXT NOT NULL, - visibility_json TEXT NOT NULL, - event_key TEXT NOT NULL, - recorded_at TEXT NOT NULL, - UNIQUE(run_id, event_key) - ) - """ - ) - conn.execute( - "CREATE INDEX IF NOT EXISTS idx_events_run_tick_id " - "ON events(run_id, tick, id)" - ) - - def _has_legacy_schema(self, conn: sqlite3.Connection) -> bool: - snapshots = self._table_columns(conn, "snapshots") - events = self._table_columns(conn, "events") - return (bool(snapshots) and "run_id" not in snapshots) or ( - bool(events) and ("run_id" not in events or "event_key" not in events) - ) - - def _rebuild_legacy_schema(self, conn: sqlite3.Connection) -> None: - conn.execute("ALTER TABLE snapshots RENAME TO snapshots_legacy") - conn.execute("ALTER TABLE events RENAME TO events_legacy") - self._create_schema(conn) - conn.execute( - """ - INSERT OR IGNORE INTO snapshots(run_id, tick, world_json, recorded_at) - SELECT 'legacy', tick, world_json, recorded_at - FROM snapshots_legacy - """ - ) - rows = conn.execute( - """ - SELECT tick, snapshot_tick, event_index, event, visibility_json, recorded_at - FROM events_legacy - ORDER BY id ASC - """ - ).fetchall() - conn.executemany( - """ - INSERT OR IGNORE INTO events( - run_id, - tick, - snapshot_tick, - event_index, - event, - visibility_json, - event_key, - recorded_at - ) - VALUES ('legacy', ?, ?, ?, ?, ?, ?, ?) - """, - [ - ( - int(row["tick"]), - int(row["snapshot_tick"]), - int(row["event_index"]), - str(row["event"]), - str(row["visibility_json"]), - self._event_key( - int(row["tick"]), - str(row["event"]), - str(row["visibility_json"]), - ), - str(row["recorded_at"]), - ) - for row in rows - ], - ) - conn.execute("DROP TABLE snapshots_legacy") - conn.execute("DROP TABLE events_legacy") - - def _table_columns(self, conn: sqlite3.Connection, table: str) -> set[str]: - return {str(row["name"]) for row in conn.execute(f"PRAGMA table_info({table})").fetchall()} - - def set_run_id(self, run_id: str) -> None: - self.run_id = run_id - - def schema_version(self) -> int: - with self._lock: - row = self._connection().execute("PRAGMA user_version").fetchone() - return int(row[0]) - - def clear_current_run(self) -> None: - conn = self._connection() - with self._lock, conn: - conn.execute("DELETE FROM events WHERE run_id = ?", (self.run_id,)) - conn.execute("DELETE FROM snapshots WHERE run_id = ?", (self.run_id,)) - - @property - def is_open(self) -> bool: - return self._conn is not None - - def close(self) -> None: - with self._lock: - if self._conn is not None: - self._conn.close() - self._conn = None - - def record_world_snapshot(self, world: dict[str, Any]) -> None: - """Store a produced world snapshot plus deduplicated events derived from it.""" - tick = int(world.get("tick", 0)) - recorded_at = datetime.now(UTC).isoformat() - world_json = json.dumps(world, ensure_ascii=True, sort_keys=True) - conn = self._connection() - - with self._lock, conn: - conn.execute( - """ - INSERT INTO snapshots(run_id, tick, world_json, recorded_at) - VALUES (?, ?, ?, ?) - ON CONFLICT(run_id, tick) DO UPDATE SET - world_json = excluded.world_json, - recorded_at = excluded.recorded_at - """, - (self.run_id, tick, world_json, recorded_at), - ) - conn.executemany( - """ - INSERT OR IGNORE INTO events( - run_id, - tick, - snapshot_tick, - event_index, - event, - visibility_json, - event_key, - recorded_at - ) - VALUES (?, ?, ?, ?, ?, ?, ?, ?) - """, - [ - ( - self.run_id, - event_tick, - tick, - index, - event, - visibility_json, - self._event_key(event_tick, event, visibility_json), - recorded_at, - ) - for index, event_tick, event, visibility_json in self._iter_events( - world, - tick, - ) - ], - ) - - def get_snapshot(self, tick: int) -> dict[str, Any] | None: - with self._lock: - row = ( - self._connection() - .execute( - "SELECT world_json FROM snapshots WHERE run_id = ? AND tick = ?", - (self.run_id, tick), - ) - .fetchone() - ) - if row is None: - return None - payload = json.loads(str(row["world_json"])) - return payload if isinstance(payload, dict) else None - - def query_events( - self, - *, - from_tick: int | None = None, - to_tick: int | None = None, - limit: int = 100, - ) -> list[dict[str, Any]]: - clauses: list[str] = ["run_id = ?"] - params: list[Any] = [self.run_id] - if from_tick is not None: - clauses.append("tick >= ?") - params.append(from_tick) - if to_tick is not None: - clauses.append("tick <= ?") - params.append(to_tick) - - has_tick_filter = from_tick is not None or to_tick is not None - where = f"WHERE {' AND '.join(clauses)}" - order = "tick ASC, id ASC" if has_tick_filter else "tick DESC, id DESC" - with self._lock: - rows = ( - self._connection() - .execute( - f""" - SELECT id, tick, snapshot_tick, event, visibility_json, recorded_at - FROM events - {where} - ORDER BY {order} - LIMIT ? - """, - (*params, limit), - ) - .fetchall() - ) - events = [self._row_to_event(row) for row in rows] - return events if has_tick_filter else list(reversed(events)) - - def counts(self) -> dict[str, int]: - with self._lock: - conn = self._connection() - snapshot_count = conn.execute( - "SELECT COUNT(*) FROM snapshots WHERE run_id = ?", - (self.run_id,), - ).fetchone()[0] - event_count = conn.execute( - "SELECT COUNT(*) FROM events WHERE run_id = ?", - (self.run_id,), - ).fetchone()[0] - return {"snapshots": int(snapshot_count), "events": int(event_count)} - - def total_counts(self) -> dict[str, int]: - with self._lock: - conn = self._connection() - snapshot_count = conn.execute("SELECT COUNT(*) FROM snapshots").fetchone()[0] - event_count = conn.execute("SELECT COUNT(*) FROM events").fetchone()[0] - return {"snapshots": int(snapshot_count), "events": int(event_count)} - - def diagnostics(self) -> dict[str, Any]: - if not self.is_open: - return { - "path": str(self.path), - "open": False, - "run_id": self.run_id, - "schema_version": None, - "counts": {"snapshots": 0, "events": 0}, - "total_counts": {"snapshots": 0, "events": 0}, - } - return { - "path": str(self.path), - "open": self.is_open, - "run_id": self.run_id, - "schema_version": self.schema_version(), - "counts": self.counts(), - "total_counts": self.total_counts(), - } - - def _row_to_event(self, row: sqlite3.Row) -> dict[str, Any]: - visibility = json.loads(str(row["visibility_json"])) - return { - "id": int(row["id"]), - "tick": int(row["tick"]), - "snapshot_tick": int(row["snapshot_tick"]), - "event": str(row["event"]), - "visibility": visibility if isinstance(visibility, dict) else {}, - "recorded_at": str(row["recorded_at"]), - } - - def _connection(self) -> sqlite3.Connection: - if self._conn is None: - raise RuntimeError("EventStore is closed") - return self._conn - - def _iter_events( - self, - world: dict[str, Any], - snapshot_tick: int, - ) -> list[tuple[int, int, str, str]]: - raw_events = world.get("event_log") - if not isinstance(raw_events, list): - raw_events = world.get("recent_events", []) - if not isinstance(raw_events, list): - return [] - - events: list[tuple[int, int, str, str]] = [] - for index, raw in enumerate(raw_events): - event: str | None = None - visibility: dict[str, Any] = {} - if isinstance(raw, dict): - raw_event = raw.get("event") - if isinstance(raw_event, str): - event = raw_event - raw_visibility = raw.get("visibility") - if isinstance(raw_visibility, dict): - visibility = raw_visibility - elif isinstance(raw, str): - event = raw - - if event is None or not event.strip(): - continue - event_tick = self._event_tick(event, snapshot_tick) - visibility_json = json.dumps(visibility, ensure_ascii=True, sort_keys=True) - events.append((index, event_tick, event, visibility_json)) - return events - - def _event_key(self, tick: int, event: str, visibility_json: str) -> str: - payload = json.dumps( - {"tick": tick, "event": event, "visibility": visibility_json}, - ensure_ascii=True, - sort_keys=True, - ) - return sha256(payload.encode("utf-8")).hexdigest() - - def _event_tick(self, event: str, fallback_tick: int) -> int: - match = _TICK_RE.match(event) - if match is None: - return fallback_tick - return int(match.group(1)) diff --git a/antelab/api/server.py b/antelab/api/server.py deleted file mode 100644 index 87b24d8..0000000 --- a/antelab/api/server.py +++ /dev/null @@ -1,917 +0,0 @@ -"""FastAPI server exposing simulation state and controls.""" - -from __future__ import annotations - -import asyncio -import json -import logging -import os -import random -import sqlite3 -import subprocess -import time -import uuid -from collections.abc import AsyncGenerator -from contextlib import asynccontextmanager -from dataclasses import asdict -from datetime import UTC, datetime -from pathlib import Path -from typing import Any, Literal - -from fastapi import FastAPI, HTTPException, Query, Request, WebSocket, WebSocketDisconnect -from fastapi.middleware.cors import CORSMiddleware -from pydantic import BaseModel, Field - -from antelab.api.event_store import EventStore -from antelab.config.identity import config_hash -from antelab.config.loader import AnteLabConfig, load_config -from antelab.engine.agent import Agent -from antelab.engine.tick import TickRunner -from antelab.engine.world import ExperimentAxioms, LifecycleParams, World -from antelab.llm.client import LLMClient -from antelab.llm.narrative import NarrativeGenerator -from antelab.season_bundle import load_season_bundle, season_bundle_public_dict - -logger = logging.getLogger(__name__) - -_runner: TickRunner | None = None -_world: World | None = None -_tick_lock = asyncio.Lock() -_connections: set[WebSocket] = set() -_history: SnapshotHistory | None = None -_event_store: EventStore | None = None -_event_store_last_error: str | None = None -_run_meta: dict[str, Any] = {} -_active_config: AnteLabConfig | None = None - -# Audience vote tallies (in-memory; v0 demo — no auth or persistence). -_narrative_generator: NarrativeGenerator | None = None -_narrative_history: list[dict[str, Any]] = [] -MAX_NARRATIVE_HISTORY = 500 - -_audience_votes: dict[str, dict[str, int]] = {"eviction": {}, "shelter": {}} -# Per-client cooldown for POST /api/votes (IP + kind + target). -_audience_vote_last: dict[str, float] = {} -VOTE_COOLDOWN_SEC = 2.0 - - -class SnapshotHistory: - """In-memory tick-indexed snapshots with append-only persistence.""" - - def __init__( - self, - path: Path, - run_id: str, - max_entries: int = 500, - compact_every: int = 100, - ) -> None: - self.path = path - self.run_id = run_id - self.max_entries = max_entries - self.compact_every = max(1, compact_every) - self._since_compact = 0 - self._by_tick: dict[int, dict[str, Any]] = {} - self._load() - - def _load(self) -> None: - if not self.path.exists(): - return - for line in self.path.read_text(encoding="utf-8").splitlines(): - if not line.strip(): - continue - try: - record = json.loads(line) - if record.get("run_id") != self.run_id: - continue - tick = int(record["tick"]) - world = record["world"] - self._by_tick[tick] = world - except (ValueError, KeyError, json.JSONDecodeError, TypeError): - continue - self._trim() - - def set_run_id(self, run_id: str) -> None: - self.run_id = run_id - self._by_tick.clear() - self._since_compact = 0 - - def _trim(self) -> None: - if len(self._by_tick) <= self.max_entries: - return - ticks = sorted(self._by_tick.keys()) - for tick in ticks[: len(self._by_tick) - self.max_entries]: - self._by_tick.pop(tick, None) - - def append(self, world: dict[str, Any]) -> None: - tick = int(world.get("tick", 0)) - self._by_tick[tick] = world - self._trim() - self._append_record({"run_id": self.run_id, "tick": tick, "world": world}) - self._since_compact += 1 - if self._since_compact >= self.compact_every: - self.compact() - self._since_compact = 0 - - def _append_record(self, record: dict[str, Any]) -> None: - self.path.parent.mkdir(parents=True, exist_ok=True) - with self.path.open("a", encoding="utf-8") as f: - f.write(json.dumps(record, ensure_ascii=True)) - f.write("\n") - - def get(self, tick: int) -> dict[str, Any] | None: - return self._by_tick.get(tick) - - def list_ticks(self, limit: int = 20) -> list[int]: - ticks = sorted(self._by_tick.keys(), reverse=True) - return ticks[:limit] - - def meta(self) -> dict[str, Any]: - return { - "path": str(self.path), - "run_id": self.run_id, - "max_entries": self.max_entries, - "compact_every": self.compact_every, - "current_entries": len(self._by_tick), - } - - def metrics_timeline(self, limit: int = 100) -> list[dict[str, Any]]: - ticks = sorted(self._by_tick.keys(), reverse=True)[:limit] - points: list[dict[str, Any]] = [] - for tick in reversed(ticks): - world = self._by_tick[tick] - metrics = dict(world.get("metrics", {})) - points.append({"tick": tick, "metrics": metrics}) - return points - - def clear(self, keep_world: dict[str, Any] | None = None) -> None: - self._by_tick.clear() - if keep_world is not None: - tick = int(keep_world.get("tick", 0)) - self._by_tick[tick] = keep_world - self.compact() - - def compact(self) -> None: - if not self._by_tick: - if self.path.exists(): - self.path.unlink() - return - self.path.parent.mkdir(parents=True, exist_ok=True) - with self.path.open("w", encoding="utf-8") as f: - for tick in sorted(self._by_tick.keys()): - record = { - "run_id": self.run_id, - "tick": tick, - "world": self._by_tick[tick], - } - f.write(json.dumps(record, ensure_ascii=True)) - f.write("\n") - -async def _broadcast_world_snapshot() -> None: - """Push current world state to all connected websocket clients.""" - if _world is None or not _connections: - return - - message: dict[str, Any] = {"type": "world_snapshot", "world": _world.to_dict()} - if _narrative_history: - message["narrative"] = _narrative_history[-1] - stale: list[WebSocket] = [] - - # Iterate over a snapshot because the websocket set can change while we await send_json. - for ws in tuple(_connections): - try: - await ws.send_json(message) - except (RuntimeError, WebSocketDisconnect): - stale.append(ws) - - for ws in stale: - _connections.discard(ws) - - -def _record_world_snapshot() -> dict[str, Any]: - assert _world is not None and _history is not None - world = _world.to_dict() - _history.append(world) - _record_event_store_snapshot(world) - return world - - -def _record_event_store_snapshot(world: dict[str, Any]) -> None: - global _event_store_last_error - if _event_store is not None: - try: - _event_store.record_world_snapshot(world) - _event_store_last_error = None - except (sqlite3.Error, RuntimeError, OSError) as exc: - _event_store_last_error = f"{type(exc).__name__}: {exc}" - logger.exception("Passive event-store write failed") - - -def _event_store_path(history_path: Path) -> Path: - override = os.environ.get("ANTELAB_EVENT_STORE_PATH") - if override: - return Path(override) - return history_path.with_suffix(".sqlite3") - - -def _build_runner_for_loaded_world( - world: World, - agents_private: dict[str, Any] | None = None, -) -> TickRunner: - assert _active_config is not None - llm = LLMClient( - mode=_active_config.llm.mode, - model=_active_config.llm.model, - temperature=_active_config.llm.temperature, - max_tokens=_active_config.llm.max_tokens, - ) - agents: list[Agent] = [] - for state in sorted(world.agents.values(), key=lambda s: s.id): - agent = Agent.create( - name=state.name, - personality="Recovered agent from persisted world state.", - llm=llm, - memory_size=world.axioms.memory_size, - ) - agent.id = state.id - if agents_private: - blob = agents_private.get(state.id) - if isinstance(blob, dict): - mem = blob.get("memory_events") - pers = blob.get("personality") - pers_ok = isinstance(pers, str) and pers.strip() - mem_ok = isinstance(mem, list) - if mem_ok or pers_ok: - agent.restore_private_state( - personality=pers if pers_ok else None, - memory_events=[str(x) for x in mem] if mem_ok else None, - ) - agents.append(agent) - return TickRunner(world, agents, template_llm=llm) - - -def _serialize_agents_private(runner: TickRunner) -> dict[str, Any]: - out: dict[str, Any] = {} - for agent in runner.agents: - out[agent.id] = { - "personality": agent.personality, - "memory_events": list(agent.memory.events), - } - return out - - -def _get_git_sha() -> str | None: - try: - result = subprocess.run( - ["git", "rev-parse", "HEAD"], - check=True, - capture_output=True, - text=True, - ) - except (OSError, subprocess.SubprocessError): - return None - return result.stdout.strip() or None - - -def _build_run_meta(cfg: AnteLabConfig, config_path: str | None) -> dict[str, Any]: - return { - "run_id": str(uuid.uuid4()), - "started_at": datetime.now(UTC).isoformat(), - "seed": cfg.experiment.seed, - "experiment_name": cfg.experiment.name, - "llm_mode": cfg.llm.mode, - "llm_model": cfg.llm.model, - "config_path": config_path or "", - "config_hash": config_hash(cfg), - "git_sha": _get_git_sha(), - } - - -def _bootstrap(config: AnteLabConfig | None = None) -> tuple[World, TickRunner]: - global _history, _event_store, _event_store_last_error, _run_meta, _active_config - if config is None: - cfg = load_config() - config_path = str(Path.cwd() / "antelab/config/default.yaml") - else: - cfg = config - config_path = None - _active_config = cfg - random.seed(cfg.experiment.seed) - - logging.basicConfig( - level=getattr(logging, cfg.server.log_level.upper(), logging.INFO), - format="%(asctime)s %(name)s %(levelname)s %(message)s", - force=True, - ) - - world = World( - name=cfg.world.name, - locations=cfg.world.initial_locations, - location_graph=cfg.world.location_graph, - resource_zones={ - location: {item: dict(spec) for item, spec in resources.items()} - for location, resources in cfg.world.resource_zones.items() - }, - recipes=cfg.world.recipes, - event_log_limit=cfg.world.event_log_limit, - axioms=ExperimentAxioms( - perception=cfg.experiment.perception, - communication=cfg.experiment.communication, - social_tracking=cfg.experiment.social_tracking, - auto_eat=cfg.experiment.auto_eat, - mortality=cfg.experiment.mortality, - memory_size=cfg.experiment.memory_size, - ), - lifecycle=LifecycleParams( - age_tick_step=cfg.lifecycle.age_tick_step, - life_stage_thresholds=dict(cfg.lifecycle.life_stage_thresholds), - vitality_loss_per_tick=cfg.lifecycle.vitality_loss_per_tick, - vitality_rest_gain=cfg.lifecycle.vitality_rest_gain, - stress_gain_per_tick=cfg.lifecycle.stress_gain_per_tick, - stress_rest_reduction=cfg.lifecycle.stress_rest_reduction, - disease_exposure_threshold=cfg.lifecycle.disease_exposure_threshold, - disease_vitality_penalty=cfg.lifecycle.disease_vitality_penalty, - disease_stress_penalty=cfg.lifecycle.disease_stress_penalty, - disease_recovery_ticks=cfg.lifecycle.disease_recovery_ticks, - disease_transmission_base_chance=cfg.lifecycle.disease_transmission_base_chance, - disease_contact_weight=cfg.lifecycle.disease_contact_weight, - disease_exposure_weight=cfg.lifecycle.disease_exposure_weight, - disease_resilience_protection_weight=( - cfg.lifecycle.disease_resilience_protection_weight - ), - disease_need_vulnerability_weight=( - cfg.lifecycle.disease_need_vulnerability_weight - ), - disease_recovery_base_chance=cfg.lifecycle.disease_recovery_base_chance, - disease_recovery_resilience_weight=( - cfg.lifecycle.disease_recovery_resilience_weight - ), - disease_recovery_rest_bonus=cfg.lifecycle.disease_recovery_rest_bonus, - disease_exposure_decay_per_tick=cfg.lifecycle.disease_exposure_decay_per_tick, - hunger_gain_per_tick=cfg.lifecycle.hunger_gain_per_tick, - hunger_rest_reduction=cfg.lifecycle.hunger_rest_reduction, - fatigue_gain_per_tick=cfg.lifecycle.fatigue_gain_per_tick, - fatigue_rest_reduction=cfg.lifecycle.fatigue_rest_reduction, - hunger_vitality_penalty_threshold=( - cfg.lifecycle.hunger_vitality_penalty_threshold - ), - fatigue_stress_penalty_threshold=( - cfg.lifecycle.fatigue_stress_penalty_threshold - ), - needs_penalty=cfg.lifecycle.needs_penalty, - auto_eat_hunger_threshold=cfg.lifecycle.auto_eat_hunger_threshold, - nourishment_gain_per_food=cfg.lifecycle.nourishment_gain_per_food, - food_items=tuple(cfg.lifecycle.food_items), - conception_base_chance=cfg.lifecycle.conception_base_chance, - conception_vitality_weight=cfg.lifecycle.conception_vitality_weight, - conception_stress_weight=cfg.lifecycle.conception_stress_weight, - conception_hunger_weight=cfg.lifecycle.conception_hunger_weight, - conception_infection_penalty=cfg.lifecycle.conception_infection_penalty, - conception_trust_weight=cfg.lifecycle.conception_trust_weight, - conception_obligation_weight=cfg.lifecycle.conception_obligation_weight, - conception_min_vitality=cfg.lifecycle.conception_min_vitality, - conception_max_stress=cfg.lifecycle.conception_max_stress, - pregnancy_duration_min_ticks=cfg.lifecycle.pregnancy_duration_min_ticks, - pregnancy_duration_max_ticks=cfg.lifecycle.pregnancy_duration_max_ticks, - social_memory_max_entries=cfg.lifecycle.social_memory_max_entries, - ), - pressure=asdict(cfg.pressure), - company=asdict(cfg.company), - ) - - for loc, items in cfg.world.location_items.items(): - world.location_items[loc] = dict(items) - - llm = LLMClient( - mode=cfg.llm.mode, - model=cfg.llm.model, - temperature=cfg.llm.temperature, - max_tokens=cfg.llm.max_tokens, - ) - - agents: list[Agent] = [] - for defn in cfg.agents: - agent = Agent.create( - defn.name, defn.personality, llm, - memory_size=cfg.experiment.memory_size, - ) - world.register_agent( - agent.id, agent.name, - location=defn.location, - inventory=defn.inventory, - ) - agents.append(agent) - - runner = TickRunner(world, agents, template_llm=llm) - - global _narrative_generator, _narrative_history - narrative_llm = LLMClient( - mode=cfg.llm.mode, - model=cfg.llm.model if cfg.narrative.model == "inherit" else cfg.narrative.model, - temperature=cfg.narrative.temperature, - max_tokens=cfg.narrative.max_tokens, - ) - _narrative_generator = NarrativeGenerator(narrative_llm, config=cfg.narrative) - _narrative_history = [] - - history_path = Path(cfg.history.path) - _run_meta = _build_run_meta(cfg, config_path=config_path) - _history = SnapshotHistory( - path=history_path, - run_id=_run_meta["run_id"], - max_entries=cfg.history.max_entries, - compact_every=cfg.history.compact_every, - ) - if _event_store is not None: - _event_store.close() - _event_store = EventStore(_event_store_path(history_path), run_id=_run_meta["run_id"]) - _event_store_last_error = None - return world, runner - - -async def _generate_narrative() -> dict[str, Any] | None: - """Generate and store narrative for the current tick.""" - global _narrative_generator, _narrative_history - if _narrative_generator is None or _world is None: - return None - - world_dict = _world.to_dict() - agents_list: list[dict[str, Any]] = [] - for a in world_dict.get("agents", []): - agents_list.append({ - "name": a.get("name", "?"), - "location": a.get("location", "unknown"), - "last_action": a.get("last_action", ""), - "alive": a.get("alive", True), - }) - - locations = list(world_dict.get("locations", [])) - events = list(world_dict.get("recent_events", [])) - company = world_dict.get("company") - - entry = await _narrative_generator.generate( - tick=_world.tick, - events=events, - agents=agents_list, - locations=locations, - company_summary=company, - ) - - if entry.text: - d = entry.to_dict() - _narrative_history.append(d) - if len(_narrative_history) > MAX_NARRATIVE_HISTORY: - _narrative_history = _narrative_history[-MAX_NARRATIVE_HISTORY:] - return d - return None - - -def _ensure_bootstrap() -> None: - global _world, _runner - if _world is None or _runner is None: - _world, _runner = _bootstrap() - _record_world_snapshot() - - -@asynccontextmanager -async def lifespan(app: FastAPI) -> AsyncGenerator[None]: - global _world, _runner, _event_store - _world, _runner = _bootstrap() - _record_world_snapshot() - try: - yield - finally: - if _event_store is not None: - _event_store.close() - _event_store = None - - -app = FastAPI(title="AnteLab", version="0.1.0", lifespan=lifespan) - -app.add_middleware( - CORSMiddleware, - allow_origins=["*"], - allow_methods=["*"], - allow_headers=["*"], -) - - -@app.get("/api/world") -async def get_world() -> dict[str, Any]: - """Return the current world state (aligned with tick/save/load via shared lock).""" - async with _tick_lock: - assert _world is not None - return _world.to_dict() - - -@app.get("/api/run") -async def get_run_metadata() -> dict[str, Any]: - return dict(_run_meta) - - -@app.get("/api/scenario") -def get_scenario() -> dict[str, Any]: - cfg = _active_config or load_config() - return { - "id": cfg.scenario.id, - "title": cfg.scenario.title, - "hypothesis": cfg.scenario.hypothesis, - "counter_hypothesis": cfg.scenario.counter_hypothesis, - "tags": cfg.scenario.tags, - "long_run": asdict(cfg.long_run), - "pressure": asdict(cfg.pressure), - } - - -@app.get("/api/history") -async def get_history(limit: int = Query(default=20, ge=1, le=200)) -> dict[str, Any]: - assert _history is not None - ticks = _history.list_ticks(limit=limit) - return {"ticks": ticks, "latest_tick": ticks[0] if ticks else None} - - -@app.get("/api/history/meta") -async def get_history_meta() -> dict[str, Any]: - assert _history is not None - return _history.meta() - - -@app.get("/api/metrics/timeline") -async def get_metrics_timeline( - limit: int = Query(default=100, ge=1, le=1000), -) -> dict[str, Any]: - assert _history is not None - return { - "points": _history.metrics_timeline(limit=limit), - } - - -@app.get("/api/events") -async def get_events( - from_tick: int | None = Query(default=None, ge=0), - to_tick: int | None = Query(default=None, ge=0), - limit: int = Query(default=100, ge=1, le=1000), -) -> dict[str, Any]: - assert _event_store is not None - if from_tick is not None and to_tick is not None and from_tick > to_tick: - raise HTTPException(status_code=400, detail="from_tick cannot be greater than to_tick") - return { - "events": _event_store.query_events( - from_tick=from_tick, - to_tick=to_tick, - limit=limit, - ) - } - - -@app.get("/api/measurements/series") -def get_measurement_series() -> dict[str, Any]: - _ensure_bootstrap() - assert _runner is not None - return {"ticks": _runner.observer.to_json()} - - -@app.get("/api/history/{tick}") -async def get_history_tick(tick: int) -> dict[str, Any]: - assert _history is not None - world = _history.get(tick) - if world is None: - raise HTTPException(status_code=404, detail=f"Tick {tick} not found in history") - return {"tick": tick, "world": world} - - -@app.post("/api/history/compact") -async def compact_history() -> dict[str, Any]: - assert _history is not None - _history.compact() - ticks = _history.list_ticks(limit=200) - return {"status": "ok", "ticks": ticks} - - -@app.post("/api/history/clear") -async def clear_history(keep_latest: bool = Query(default=True)) -> dict[str, Any]: - assert _history is not None and _world is not None - keep_world = _world.to_dict() if keep_latest else None - _history.clear(keep_world=keep_world) - _clear_event_store_history(keep_world=keep_world) - ticks = _history.list_ticks(limit=200) - return {"status": "ok", "ticks": ticks} - - -def _clear_event_store_history(keep_world: dict[str, Any] | None) -> None: - global _event_store_last_error - if _event_store is None: - return - try: - _event_store.clear_current_run() - if keep_world is not None: - _event_store.record_world_snapshot(keep_world) - _event_store_last_error = None - except (sqlite3.Error, RuntimeError, OSError) as exc: - _event_store_last_error = f"{type(exc).__name__}: {exc}" - logger.exception("Passive event-store clear failed") - - -def _apply_audience_votes_from_snapshot_payload(payload: dict[str, Any]) -> None: - """Restore in-memory audience tallies from a snapshot file (or clear if missing / invalid).""" - _audience_vote_last.clear() - raw = payload.get("audience_votes") - if raw is None: - _audience_votes["eviction"].clear() - _audience_votes["shelter"].clear() - return - if not isinstance(raw, dict): - _audience_votes["eviction"].clear() - _audience_votes["shelter"].clear() - return - ev_o = raw.get("eviction") - sh_o = raw.get("shelter") - if not isinstance(ev_o, dict) or not isinstance(sh_o, dict): - _audience_votes["eviction"].clear() - _audience_votes["shelter"].clear() - return - - def _int_dict(d: dict[Any, Any]) -> dict[str, int]: - out: dict[str, int] = {} - for k, v in d.items(): - try: - out[str(k)] = int(v) - except (TypeError, ValueError): - continue - return out - - _audience_votes["eviction"] = _int_dict(ev_o) - _audience_votes["shelter"] = _int_dict(sh_o) - - -@app.post("/api/save") -async def save_snapshot() -> dict[str, Any]: - assert _world is not None and _history is not None and _runner is not None - snapshot_dir = _history.path.parent / "snapshots" - snapshot_dir.mkdir(parents=True, exist_ok=True) - filename = f"{_run_meta.get('run_id', 'run')}-tick-{_world.tick}.json" - target = snapshot_dir / filename - async with _tick_lock: - payload = { - "snapshot_version": 2, - "run": dict(_run_meta), - "world": _world.to_dict(), - "audience_votes": { - "eviction": dict(_audience_votes["eviction"]), - "shelter": dict(_audience_votes["shelter"]), - }, - "agents_private": _serialize_agents_private(_runner), - } - target.write_text(json.dumps(payload, ensure_ascii=True), encoding="utf-8") - return {"status": "ok", "path": str(target)} - - -@app.post("/api/load") -async def load_snapshot(path: str = Query(..., min_length=1)) -> dict[str, Any]: - global _world, _runner, _run_meta, _event_store, _event_store_last_error - target = Path(path) - if not target.exists(): - raise HTTPException(status_code=400, detail=f"Snapshot not found: {target}") - try: - payload = json.loads(target.read_text(encoding="utf-8")) - except json.JSONDecodeError as exc: - raise HTTPException(status_code=400, detail=f"Invalid snapshot JSON: {exc}") from exc - world_payload = payload.get("world") - if not isinstance(world_payload, dict): - raise HTTPException(status_code=400, detail="Snapshot missing 'world' object") - - async with _tick_lock: - _world = World.from_dict(world_payload) - raw_private = payload.get("agents_private") - agents_private = raw_private if isinstance(raw_private, dict) else None - _runner = _build_runner_for_loaded_world(_world, agents_private=agents_private) - _apply_audience_votes_from_snapshot_payload(payload) - parent_run = payload.get("run") - parent_run_id = ( - parent_run.get("run_id") - if isinstance(parent_run, dict) and isinstance(parent_run.get("run_id"), str) - else _run_meta.get("run_id") - ) - _run_meta = { - **dict(_run_meta), - "run_id": str(uuid.uuid4()), - "started_at": datetime.now(UTC).isoformat(), - "loaded_from_run_id": parent_run_id, - "loaded_from_snapshot": str(target), - } - if _event_store is not None: - _event_store.set_run_id(_run_meta["run_id"]) - _event_store_last_error = None - if _history is not None: - _history.set_run_id(_run_meta["run_id"]) - world_out = _record_world_snapshot() - await _broadcast_world_snapshot() - return {"status": "ok", "tick": world_out["tick"], "world": world_out} - - -@app.post("/api/tick") -async def run_tick() -> dict[str, Any]: - """Advance the simulation by one tick.""" - assert _runner is not None and _world is not None - async with _tick_lock: - result = await _runner.run_tick() - world = _record_world_snapshot() - narrative = await _generate_narrative() - await _broadcast_world_snapshot() - response: dict[str, Any] = { - "tick": result.tick, - "results": [ - {"success": r.success, "description": r.description} - for r in result.results - ], - "world": world, - } - if narrative: - response["narrative"] = narrative - return response - - -class VoteRequest(BaseModel): - """Audience poll: who to evict next vs who gets shelter priority.""" - - kind: Literal["eviction", "shelter"] - agent_id: str = Field(..., min_length=1) - - -class DemoRunRequest(BaseModel): - ticks: int = Field(default=50, ge=1, le=200) - - -@app.post("/api/demo/run") -async def demo_run(req: DemoRunRequest) -> dict[str, Any]: - """Run N ticks in batch for headless demo frame generation.""" - assert _runner is not None and _world is not None - for _ in range(req.ticks): - await _runner.run_tick() - world = _record_world_snapshot() - await _generate_narrative() - await _broadcast_world_snapshot() - return world - - -def _client_host(request: Request) -> str: - forwarded = request.headers.get("x-forwarded-for") - if forwarded: - return forwarded.split(",")[0].strip() - if request.client: - return request.client.host - return "unknown" - - -def _vote_snapshot() -> dict[str, Any]: - assert _world is not None - return { - "eviction": dict(_audience_votes["eviction"]), - "shelter": dict(_audience_votes["shelter"]), - "agents": [ - {"id": a.id, "name": a.name, "alive": a.alive} - for a in _world.agents.values() - ], - "tick": _world.tick, - } - - -@app.get("/api/votes") -async def get_audience_votes() -> dict[str, Any]: - """Return in-memory eviction / shelter tallies for the current run.""" - assert _world is not None - return _vote_snapshot() - - -@app.post("/api/votes") -async def post_audience_vote(request: Request, body: VoteRequest) -> dict[str, Any]: - """Increment a vote for an alive cast member (light per-IP cooldown).""" - assert _world is not None - state = _world.agents.get(body.agent_id) - if state is None or not state.alive: - raise HTTPException(status_code=400, detail="Unknown or eliminated cast member") - rate_key = f"{_client_host(request)}:{body.kind}:{body.agent_id}" - now = time.monotonic() - last = _audience_vote_last.get(rate_key, 0.0) - if now - last < VOTE_COOLDOWN_SEC: - raise HTTPException(status_code=429, detail="Slow down — try again in a moment") - _audience_vote_last[rate_key] = now - bucket = _audience_votes[body.kind] - bucket[body.agent_id] = bucket.get(body.agent_id, 0) + 1 - out = _vote_snapshot() - out["ok"] = True - return out - - -@app.get("/api/experiment") -async def get_experiment() -> dict[str, Any]: - """Return the current experiment configuration and measurements.""" - assert _runner is not None and _world is not None - return { - "axioms": _world.to_dict()["experiment"], - "measurements": _runner.observer.summary(), - } - - -@app.get("/api/season/bundle") -async def get_season_bundle() -> dict[str, Any]: - """Active season manifest: experiments, cast order, titles. Paths are repo-relative.""" - bundle = load_season_bundle() - return season_bundle_public_dict(bundle) - - -@app.get("/api/health") -async def health() -> dict[str, str]: - return {"status": "ok"} - - -@app.get("/api/health/runtime") -async def runtime_health() -> dict[str, Any]: - assert _world is not None - alive = sum(1 for state in _world.agents.values() if state.alive) - event_store = _event_store_diagnostics() - return { - "status": "ok", - "tick": _world.tick, - "agent_count": len(_world.agents), - "alive_count": alive, - "event_log_entries": len(_world.event_log), - "event_log_limit": _world.event_log_limit, - "event_store": event_store, - } - - -def _event_store_diagnostics() -> dict[str, Any]: - if _event_store is None: - return { - "path": None, - "open": False, - "run_id": _run_meta.get("run_id"), - "schema_version": None, - "counts": {"snapshots": 0, "events": 0}, - "total_counts": {"snapshots": 0, "events": 0}, - "degraded": _event_store_last_error is not None, - "last_error": _event_store_last_error, - "multiprocess_note": "SQLite event store is process-local; use one API writer.", - } - try: - diagnostics = _event_store.diagnostics() - except (sqlite3.Error, RuntimeError, OSError) as exc: - error = f"{type(exc).__name__}: {exc}" - logger.exception("Passive event-store diagnostics failed") - return { - "path": str(_event_store.path), - "open": _event_store.is_open, - "run_id": _run_meta.get("run_id"), - "schema_version": None, - "counts": {"snapshots": 0, "events": 0}, - "total_counts": {"snapshots": 0, "events": 0}, - "degraded": True, - "last_error": error, - "multiprocess_note": "SQLite event store is process-local; use one API writer.", - } - diagnostics["degraded"] = _event_store_last_error is not None - diagnostics["last_error"] = _event_store_last_error - diagnostics["multiprocess_note"] = "SQLite event store is process-local; use one API writer." - return diagnostics - - -@app.get("/api/narrative") -async def get_narrative( - limit: int = Query(default=1, ge=1, le=100), -) -> dict[str, Any]: - """Return the latest narrative entry (or N most recent).""" - entries = _narrative_history[-limit:] if _narrative_history else [] - return { - "entries": entries, - "latest": entries[-1] if entries else None, - "total": len(_narrative_history), - } - - -@app.get("/api/narrative/history") -async def get_narrative_history( - from_tick: int | None = Query(default=None, ge=0), - to_tick: int | None = Query(default=None, ge=0), - limit: int = Query(default=50, ge=1, le=500), -) -> dict[str, Any]: - """Return narrative entries within a tick range.""" - entries = _narrative_history - if from_tick is not None: - entries = [e for e in entries if e["tick"] >= from_tick] - if to_tick is not None: - entries = [e for e in entries if e["tick"] <= to_tick] - entries = entries[-limit:] - return {"entries": entries, "total": len(_narrative_history)} - - -@app.websocket("/ws/world") -async def world_stream(websocket: WebSocket) -> None: - """Stream world snapshots to connected observers.""" - await websocket.accept() - _connections.add(websocket) - await _broadcast_world_snapshot() - try: - while True: - await websocket.receive_text() - except WebSocketDisconnect: - _connections.discard(websocket) diff --git a/antelab/artifacts/__init__.py b/antelab/artifacts/__init__.py new file mode 100644 index 0000000..a8a6741 --- /dev/null +++ b/antelab/artifacts/__init__.py @@ -0,0 +1,6 @@ +"""Versioned, reproducible simulation artifacts.""" + +from antelab.artifacts.schema import ArtifactError, RunArtifact +from antelab.artifacts.writer import write_artifact + +__all__ = ["ArtifactError", "RunArtifact", "write_artifact"] diff --git a/antelab/artifacts/schema.py b/antelab/artifacts/schema.py new file mode 100644 index 0000000..eb8332f --- /dev/null +++ b/antelab/artifacts/schema.py @@ -0,0 +1,797 @@ +"""Canonical offline-verifiable run artifact schema.""" + +from __future__ import annotations + +import json +from collections.abc import Iterator, Mapping +from copy import deepcopy +from dataclasses import dataclass +from hashlib import sha256 +from typing import cast + +from antelab import __version__ +from antelab.core.config import ConfigError, SimulationConfig +from antelab.core.fixed import DIRECTION_COUNT, UNIT +from antelab.core.genome import Genome +from antelab.core.simulation import Simulation, checksum_state + +_SUMMARY_KEYS = { + "population", + "food", + "births", + "deaths", + "max_generation", + "total_organism_energy", + "genome_diversity", +} +_METRIC_KEYS = {*_SUMMARY_KEYS, "tick", "checksum"} +_FINAL_STATE_KEYS = { + "tick", + "rng_state", + "next_organism_id", + "next_food_id", + "foods", + "organisms", + "lineage", + "status", +} +_ORGANISM_KEYS = { + "id", + "parent_id", + "generation", + "genome", + "x", + "y", + "heading", + "energy", + "age", + "alive", + "last_reproduction_tick", + "signal", + "food_eaten", + "offspring_count", + "death_cause", +} +_FOOD_KEYS = {"id", "x", "y", "energy"} +_LINEAGE_KEYS = {"parent_id", "child_id", "tick", "generation"} +_TERMINAL_STATUSES = {"completed", "extinct", "capacity_exceeded"} + + +class ArtifactError(ValueError): + """Raised when an artifact cannot be trusted offline.""" + + +class FrozenDict(Mapping[str, object]): + """A read-only mapping backed by private, recursively frozen storage.""" + + def __init__(self, values: Mapping[str, object]) -> None: + self.__values = dict(values) + + def __getitem__(self, key: str) -> object: + return self.__values[key] + + def __iter__(self) -> Iterator[str]: + return iter(self.__values) + + def __len__(self) -> int: + return len(self.__values) + + def __repr__(self) -> str: + return f"FrozenDict({self.__values!r})" + + def __eq__(self, other: object) -> bool: + if not isinstance(other, Mapping): + return False + return dict(self.items()) == dict(other.items()) + + +def assert_canonical_tree(value: object) -> None: + """Reject every value that has no stable canonical JSON representation.""" + + _assert_canonical_tree(value, set()) + + +def _assert_canonical_tree(value: object, active_containers: set[int]) -> None: + if value is None or type(value) in {bool, int, str}: + return + if type(value) not in {list, tuple, dict, FrozenDict}: + raise ArtifactError(f"non-canonical value type: {type(value).__name__}") + + identity = id(value) + if identity in active_containers: + raise ArtifactError("canonical value tree must not contain cycles") + active_containers.add(identity) + try: + if type(value) in {dict, FrozenDict}: + mapping = cast(Mapping[object, object], value) + if any(type(key) is not str for key in mapping): + raise ArtifactError("canonical dictionaries require exact string keys") + for item in mapping.values(): + _assert_canonical_tree(item, active_containers) + else: + sequence = cast(list[object] | tuple[object, ...], value) + for item in sequence: + _assert_canonical_tree(item, active_containers) + finally: + active_containers.remove(identity) + + +@dataclass(frozen=True) +class RunArtifact: + schema_version: int + engine_version: str + run_id: str + condition: str + seed: int + ticks_requested: int + ticks_completed: int + status: str + config: dict[str, object] + ancestor_genome: dict[str, object] + summary: dict[str, int] + metrics: tuple[dict[str, int | str], ...] + lineage: tuple[dict[str, int], ...] + genome_distribution: tuple[dict[str, object], ...] + notable_events: tuple[dict[str, int | str], ...] + final_state: dict[str, object] + final_checksum: str + + def __post_init__(self) -> None: + self._validate_top_level_container_types() + assert_canonical_tree( + ( + self.config, + self.ancestor_genome, + self.summary, + self.metrics, + self.lineage, + self.genome_distribution, + self.notable_events, + self.final_state, + ) + ) + object.__setattr__(self, "config", cast(dict[str, object], _freeze(self.config))) + object.__setattr__( + self, + "ancestor_genome", + cast(dict[str, object], _freeze(self.ancestor_genome)), + ) + object.__setattr__(self, "summary", cast(dict[str, int], _freeze(self.summary))) + object.__setattr__( + self, + "metrics", + cast(tuple[dict[str, int | str], ...], _freeze(self.metrics)), + ) + object.__setattr__( + self, + "lineage", + cast(tuple[dict[str, int], ...], _freeze(self.lineage)), + ) + object.__setattr__( + self, + "genome_distribution", + cast(tuple[dict[str, object], ...], _freeze(self.genome_distribution)), + ) + object.__setattr__( + self, + "notable_events", + cast(tuple[dict[str, int | str], ...], _freeze(self.notable_events)), + ) + object.__setattr__( + self, + "final_state", + cast(dict[str, object], _freeze(self.final_state)), + ) + self.validate() + + @classmethod + def from_simulation( + cls, + simulation: Simulation, + metrics: tuple[dict[str, int | str], ...], + ) -> RunArtifact: + try: + simulation.validate() + except (RuntimeError, TypeError, ValueError) as error: + raise ArtifactError("simulation is internally invalid") from error + if simulation.status not in _TERMINAL_STATUSES: + raise ArtifactError("artifact requires a terminal simulation") + + config = deepcopy(simulation.config.to_dict()) + final_state = deepcopy(simulation.canonical_state()) + final_checksum = checksum_state(final_state) + if final_checksum != simulation.state_checksum(): + raise ArtifactError("canonical final state does not match simulation checksum") + + normalized_metrics = tuple(deepcopy(metric) for metric in metrics) + lineage_raw = _plain_list_of_dicts( + final_state.get("lineage"), "final-state lineage" + ) + lineage = tuple(cast(dict[str, int], deepcopy(edge)) for edge in lineage_raw) + living = [item for item in simulation.organisms.values() if item.alive] + summary = { + "population": len(living), + "food": len(simulation.environment.foods), + "births": len(simulation.lineage), + "deaths": sum(not item.alive for item in simulation.organisms.values()), + "max_generation": max( + (item.generation for item in simulation.organisms.values()), + default=0, + ), + "total_organism_energy": sum(item.energy for item in living), + "genome_diversity": len({item.genome.canonical_key() for item in living}), + } + genome_distribution = _distribution_from_organisms( + cast(list[dict[str, object]], final_state["organisms"]) + ) + digest = _config_digest(config) + artifact = cls( + schema_version=1, + engine_version=__version__, + run_id=( + f"antelab-v1-{digest}-seed-{simulation.config.seed}" + f"-ticks-{simulation.tick}" + ), + condition=simulation.config.condition, + seed=simulation.config.seed, + ticks_requested=simulation.config.ticks, + ticks_completed=simulation.tick, + status=simulation.status, + config=config, + ancestor_genome=deepcopy(simulation.ancestor_genome.to_dict()), + summary=summary, + metrics=normalized_metrics, + lineage=lineage, + genome_distribution=genome_distribution, + notable_events=tuple(deepcopy(event) for event in simulation.events), + final_state=final_state, + final_checksum=final_checksum, + ) + artifact.validate() + return artifact + + def validate(self) -> None: + self._validate_top_level_container_types() + assert_canonical_tree(self.to_dict()) + self._validate_header() + normalized_config = self._validate_config() + organisms, lineage = self._validate_final_state(normalized_config) + expected_summary = _summary_from_final_state(organisms, lineage, self.final_state) + _validate_summary(self.summary, expected_summary) + self._validate_metrics() + self._validate_lineage(organisms, lineage) + + expected_distribution = _distribution_from_organisms(organisms) + if _canonical_json(self.genome_distribution) != _canonical_json( + expected_distribution + ): + raise ArtifactError("terminal genome distribution does not match final state") + _validate_events( + self.notable_events, + self.status, + self.ticks_completed, + normalized_config, + lineage, + organisms, + ) + + expected_digest = _config_digest(normalized_config) + expected_run_id = ( + f"antelab-v1-{expected_digest}-seed-{self.seed}-ticks-{self.ticks_completed}" + ) + if self.run_id != expected_run_id: + raise ArtifactError("run ID does not match configuration and terminal tick") + + recomputed_checksum = checksum_state( + cast(dict[str, object], _thaw(self.final_state)) + ) + if not _is_checksum(self.final_checksum) or self.final_checksum != recomputed_checksum: + raise ArtifactError("final checksum does not match canonical final state") + + def _validate_top_level_container_types(self) -> None: + for label, mapping in ( + ("config", self.config), + ("ancestor_genome", self.ancestor_genome), + ("summary", self.summary), + ("final_state", self.final_state), + ): + if type(mapping) not in {dict, FrozenDict}: + raise ArtifactError(f"{label} must be an exact dictionary") + for label, sequence in ( + ("metrics", self.metrics), + ("lineage", self.lineage), + ("genome_distribution", self.genome_distribution), + ("notable_events", self.notable_events), + ): + if type(sequence) is not tuple: + raise ArtifactError(f"{label} must be an exact tuple") + if any(type(item) not in {dict, FrozenDict} for item in sequence): + raise ArtifactError(f"{label} must contain exact dictionaries") + + def _validate_header(self) -> None: + if type(self.schema_version) is not int or self.schema_version != 1: + raise ArtifactError("schema version must equal 1") + if type(self.engine_version) is not str or self.engine_version != __version__: + raise ArtifactError("engine version does not match this artifact schema") + for label, string_value in ( + ("run_id", self.run_id), + ("condition", self.condition), + ("status", self.status), + ): + if type(string_value) is not str or not string_value: + raise ArtifactError(f"{label} must be a non-empty string") + for label, integer_value in ( + ("seed", self.seed), + ("ticks_requested", self.ticks_requested), + ("ticks_completed", self.ticks_completed), + ): + if type(integer_value) is not int or integer_value < 0: + raise ArtifactError(f"{label} must be a non-negative exact integer") + if self.ticks_requested < 1 or not 1 <= self.ticks_completed <= self.ticks_requested: + raise ArtifactError("artifact tick bounds are invalid") + if self.status not in _TERMINAL_STATUSES: + raise ArtifactError("artifact status must be terminal") + + def _validate_config(self) -> dict[str, object]: + try: + normalized = SimulationConfig.from_mapping( + cast(dict[str, object], _thaw(self.config)) + ) + normalized.validate() + except (ConfigError, TypeError, ValueError) as error: + raise ArtifactError("artifact configuration is invalid") from error + normalized_config = normalized.to_dict() + if self.config != normalized_config: + raise ArtifactError("artifact configuration is not normalized") + if ( + self.condition != normalized.condition + or self.seed != normalized.seed + or self.ticks_requested != normalized.ticks + ): + raise ArtifactError("top-level fields do not match normalized configuration") + try: + Genome.from_dict(cast(dict[str, object], _thaw(self.ancestor_genome))) + except (TypeError, ValueError) as error: + raise ArtifactError("ancestor genome is invalid") from error + return normalized_config + + def _validate_final_state( + self, + config: dict[str, object], + ) -> tuple[list[dict[str, object]], list[dict[str, object]]]: + if set(self.final_state) != _FINAL_STATE_KEYS: + raise ArtifactError("final state has malformed keys") + tick = _exact_int(self.final_state.get("tick"), "final-state tick", minimum=0) + if tick != self.ticks_completed: + raise ArtifactError("final-state tick differs from ticks completed") + status = self.final_state.get("status") + if type(status) is not str or status != self.status: + raise ArtifactError("final-state status differs from artifact status") + + rng_state = _exact_int( + self.final_state.get("rng_state"), "final-state RNG state", minimum=0 + ) + if rng_state >= 1 << 64: + raise ArtifactError("final-state RNG state must fit unsigned 64-bit") + next_organism_id = _exact_int( + self.final_state.get("next_organism_id"), + "next organism ID", + minimum=1, + ) + next_food_id = _exact_int( + self.final_state.get("next_food_id"), "next food ID", minimum=1 + ) + foods = _tuple_of_dicts(self.final_state.get("foods"), "final-state foods") + organisms = _tuple_of_dicts( + self.final_state.get("organisms"), "final-state organisms" + ) + lineage = _tuple_of_dicts(self.final_state.get("lineage"), "final-state lineage") + world = cast(dict[str, object], config["world"]) + life = cast(dict[str, object], config["life"]) + _validate_foods(foods, world) + _validate_organisms(organisms, world, life) + organism_ids = [ + _exact_int(item.get("id"), "organism ID", minimum=1) for item in organisms + ] + if organism_ids != sorted(organism_ids): + raise ArtifactError("final-state organisms are not canonically sorted") + lineage_child_ids = [ + _exact_int(item.get("child_id"), "lineage child ID", minimum=1) + for item in lineage + ] + if lineage_child_ids != sorted(lineage_child_ids): + raise ArtifactError("final-state lineage is not canonically sorted") + if next_organism_id <= max(organism_ids, default=0): + raise ArtifactError("next organism ID must exceed every organism ID") + food_ids = [cast(int, item["id"]) for item in foods] + if next_food_id <= max(food_ids, default=0): + raise ArtifactError("next food ID must exceed every food ID") + max_entities = cast(int, world["max_entities"]) + if len(organisms) > max_entities: + raise ArtifactError("organism count exceeds configured capacity") + _validate_terminal_state( + self.status, + self.ticks_completed, + self.ticks_requested, + organisms, + max_entities, + ) + return organisms, lineage + + def _validate_metrics(self) -> None: + if type(self.metrics) is not tuple or not self.metrics: + raise ArtifactError("metrics must be a non-empty tuple") + previous_tick = 0 + for metric in self.metrics: + if type(cast(object, metric)) is not FrozenDict or set(metric) != _METRIC_KEYS: + raise ArtifactError("metric has malformed keys") + tick = _exact_int(metric.get("tick"), "metric tick", minimum=1) + if tick <= previous_tick: + raise ArtifactError("metric ticks must be strictly increasing") + previous_tick = tick + for key in _SUMMARY_KEYS: + _exact_int(metric.get(key), f"metric {key}", minimum=0) + if not _is_checksum(metric.get("checksum")): + raise ArtifactError("metric checksum must be 64 lowercase hex characters") + last = self.metrics[-1] + if last["tick"] != self.ticks_completed or last["checksum"] != self.final_checksum: + raise ArtifactError("last metric does not identify the final state") + if any(last[key] != self.summary[key] for key in _SUMMARY_KEYS): + raise ArtifactError("last metric counters do not match terminal summary") + + def _validate_lineage( + self, + organisms: list[dict[str, object]], + lineage: list[dict[str, object]], + ) -> None: + top_level = [dict(edge) for edge in self.lineage] + if _canonical_json(top_level) != _canonical_json(lineage): + raise ArtifactError("top-level lineage differs from final-state lineage") + by_id = {cast(int, item["id"]): item for item in organisms} + edges_by_child: dict[int, list[dict[str, object]]] = {} + for edge in lineage: + if set(edge) != _LINEAGE_KEYS: + raise ArtifactError("lineage edge has malformed keys") + parent_id = _exact_int(edge.get("parent_id"), "lineage parent ID", minimum=1) + child_id = _exact_int(edge.get("child_id"), "lineage child ID", minimum=1) + edge_tick = _exact_int(edge.get("tick"), "lineage tick", minimum=0) + generation = _exact_int(edge.get("generation"), "lineage generation", minimum=1) + if parent_id >= child_id or edge_tick >= self.ticks_completed: + raise ArtifactError("lineage edge ordering or tick is invalid") + parent = by_id.get(parent_id) + child = by_id.get(child_id) + if parent is None or child is None: + raise ArtifactError("lineage references a missing organism") + if ( + child["parent_id"] != parent_id + or child["generation"] != cast(int, parent["generation"]) + 1 + or generation != child["generation"] + ): + raise ArtifactError("lineage edge disagrees with organism state") + edges_by_child.setdefault(child_id, []).append(edge) + + for organism_id, organism in by_id.items(): + generation = cast(int, organism["generation"]) + edges = edges_by_child.get(organism_id, []) + if generation == 0: + if organism["parent_id"] is not None or edges: + raise ArtifactError("founder has parent lineage") + elif len(edges) != 1: + raise ArtifactError("non-founder must have exactly one lineage edge") + + def to_dict(self) -> dict[str, object]: + return cast( + dict[str, object], + _thaw( + { + "schema_version": self.schema_version, + "engine_version": self.engine_version, + "run_id": self.run_id, + "condition": self.condition, + "seed": self.seed, + "ticks_requested": self.ticks_requested, + "ticks_completed": self.ticks_completed, + "status": self.status, + "config": self.config, + "ancestor_genome": self.ancestor_genome, + "summary": self.summary, + "metrics": self.metrics, + "lineage": self.lineage, + "genome_distribution": self.genome_distribution, + "notable_events": self.notable_events, + "final_state": self.final_state, + "final_checksum": self.final_checksum, + } + ), + ) + + +def _config_digest(config: dict[str, object]) -> str: + return sha256(_canonical_json(config).encode("utf-8")).hexdigest()[:12] + + +def _freeze(value: object) -> object: + if type(value) in {dict, FrozenDict}: + mapping = cast(Mapping[str, object], value) + return FrozenDict({key: _freeze(item) for key, item in mapping.items()}) + if type(value) in {list, tuple}: + return tuple(_freeze(item) for item in cast(list[object] | tuple[object, ...], value)) + return value + + +def _thaw(value: object) -> object: + if isinstance(value, Mapping): + mapping = cast(Mapping[str, object], value) + return {key: _thaw(item) for key, item in mapping.items()} + if type(value) in {list, tuple}: + return [_thaw(item) for item in cast(list[object] | tuple[object, ...], value)] + return value + + +def _canonical_json(value: object) -> str: + try: + return json.dumps( + _thaw(value), + sort_keys=True, + separators=(",", ":"), + allow_nan=False, + ) + except (TypeError, ValueError) as error: + raise ArtifactError("value cannot be canonically serialized") from error + + +def _exact_int(value: object, label: str, *, minimum: int) -> int: + if type(value) is not int or value < minimum: + raise ArtifactError(f"{label} must be an exact integer >= {minimum}") + return value + + +def _exact_integer(value: object, label: str) -> int: + if type(value) is not int: + raise ArtifactError(f"{label} must be an exact integer") + return value + + +def _is_checksum(value: object) -> bool: + return ( + type(value) is str + and len(value) == 64 + and all(character in "0123456789abcdef" for character in value) + ) + + +def _tuple_of_dicts(value: object, label: str) -> list[dict[str, object]]: + if type(value) is not tuple or any( + type(item) is not FrozenDict for item in cast(tuple[object, ...], value) + ): + raise ArtifactError(f"{label} must be an immutable sequence of dictionaries") + return list(cast(tuple[dict[str, object], ...], value)) + + +def _plain_list_of_dicts(value: object, label: str) -> list[dict[str, object]]: + if type(value) is not list or any( + type(item) is not dict for item in cast(list[object], value) + ): + raise ArtifactError(f"{label} must be a list of dictionaries") + return cast(list[dict[str, object]], value) + + +def _validate_foods( + foods: list[dict[str, object]], + world: dict[str, object], +) -> None: + ids: list[int] = [] + width = cast(int, world["width"]) + height = cast(int, world["height"]) + for food in foods: + if set(food) != _FOOD_KEYS: + raise ArtifactError("food state has malformed keys") + ids.append(_exact_int(food.get("id"), "food ID", minimum=1)) + x = _exact_int(food.get("x"), "food x", minimum=0) + y = _exact_int(food.get("y"), "food y", minimum=0) + _exact_int(food.get("energy"), "food energy", minimum=1) + if x >= width or y >= height: + raise ArtifactError("food position is outside world bounds") + if ids != sorted(ids) or len(ids) != len(set(ids)): + raise ArtifactError("food states are not uniquely and canonically sorted") + + +def _validate_organisms( + organisms: list[dict[str, object]], + world: dict[str, object], + life: dict[str, object], +) -> None: + ids: list[int] = [] + width = cast(int, world["width"]) + height = cast(int, world["height"]) + max_energy = cast(int, life["max_energy"]) + for organism in organisms: + if set(organism) != _ORGANISM_KEYS: + raise ArtifactError("organism state has malformed keys") + ids.append(_exact_int(organism.get("id"), "organism ID", minimum=1)) + parent_id = organism.get("parent_id") + if parent_id is not None: + _exact_int(parent_id, "organism parent ID", minimum=1) + _exact_int(organism.get("generation"), "organism generation", minimum=0) + x = _exact_int(organism.get("x"), "organism x", minimum=0) + y = _exact_int(organism.get("y"), "organism y", minimum=0) + heading = _exact_int(organism.get("heading"), "organism heading", minimum=0) + energy = _exact_int(organism.get("energy"), "organism energy", minimum=0) + _exact_int(organism.get("age"), "organism age", minimum=0) + alive = organism.get("alive") + if type(alive) is not bool: + raise ArtifactError("organism alive must be an exact boolean") + _exact_integer( + organism.get("last_reproduction_tick"), "organism last reproduction tick" + ) + signal = _exact_int(organism.get("signal"), "organism signal", minimum=0) + _exact_int(organism.get("food_eaten"), "organism food eaten", minimum=0) + _exact_int(organism.get("offspring_count"), "organism offspring count", minimum=0) + death_cause = organism.get("death_cause") + if death_cause is not None and type(death_cause) is not str: + raise ArtifactError("organism death cause must be a string or None") + if x >= width or y >= height: + raise ArtifactError("organism position is outside world bounds") + if heading >= DIRECTION_COUNT: + raise ArtifactError("organism heading is outside direction bounds") + if energy > max_energy or (alive and energy == 0): + raise ArtifactError("organism energy is inconsistent with life state") + if signal > UNIT: + raise ArtifactError("organism signal is outside [0, UNIT]") + if (alive and death_cause is not None) or (not alive and death_cause is None): + raise ArtifactError("organism death cause is inconsistent with life state") + genome = organism.get("genome") + if type(genome) is not FrozenDict: + raise ArtifactError("organism genome must be a dictionary") + try: + Genome.from_dict(cast(dict[str, object], _thaw(genome))) + except (TypeError, ValueError) as error: + raise ArtifactError("organism genome is invalid") from error + if len(ids) != len(set(ids)): + raise ArtifactError("organism IDs are not unique") + + +def _summary_from_final_state( + organisms: list[dict[str, object]], + lineage: list[dict[str, object]], + final_state: dict[str, object], +) -> dict[str, int]: + living = [item for item in organisms if item["alive"] is True] + foods = _tuple_of_dicts(final_state.get("foods"), "final-state foods") + return { + "population": len(living), + "food": len(foods), + "births": len(lineage), + "deaths": sum(item["alive"] is False for item in organisms), + "max_generation": max( + (cast(int, item["generation"]) for item in organisms), + default=0, + ), + "total_organism_energy": sum(cast(int, item["energy"]) for item in living), + "genome_diversity": len({_canonical_json(item["genome"]) for item in living}), + } + + +def _validate_summary(actual: dict[str, int], expected: dict[str, int]) -> None: + if type(cast(object, actual)) is not FrozenDict or set(actual) != _SUMMARY_KEYS: + raise ArtifactError("summary has malformed keys") + if any(type(value) is not int or value < 0 for value in actual.values()): + raise ArtifactError("summary counters must be non-negative exact integers") + if actual != expected: + raise ArtifactError("summary does not match canonical final state") + + +def _validate_terminal_state( + status: str, + ticks_completed: int, + ticks_requested: int, + organisms: list[dict[str, object]], + max_entities: int, +) -> None: + living = sum(item["alive"] is True for item in organisms) + if status == "completed" and (ticks_completed != ticks_requested or living == 0): + raise ArtifactError("completed status is inconsistent with tick or population") + if status == "extinct" and living != 0: + raise ArtifactError("extinct status is inconsistent with living population") + if status == "capacity_exceeded" and ( + ticks_completed <= 0 or living == 0 or len(organisms) != max_entities + ): + raise ArtifactError("capacity status requires a full living population") + + +def _distribution_from_organisms( + organisms: list[dict[str, object]], +) -> tuple[dict[str, object], ...]: + grouped: dict[str, tuple[dict[str, object], int]] = {} + for organism in organisms: + if organism["alive"] is not True: + continue + genome = cast(dict[str, object], organism["genome"]) + key = _canonical_json(genome) + previous = grouped.get(key) + grouped[key] = ( + cast(dict[str, object], _thaw(genome)), + 1 if previous is None else previous[1] + 1, + ) + return tuple( + {"genome": genome, "count": count} + for _, (genome, count) in sorted(grouped.items()) + ) + + +def _validate_events( + events: tuple[dict[str, int | str], ...], + status: str, + ticks_completed: int, + config: dict[str, object], + lineage: list[dict[str, object]], + organisms: list[dict[str, object]], +) -> None: + if type(events) is not tuple: + raise ArtifactError("notable events must be a tuple") + terminal_events = 0 + previous_tick = -1 + births: list[tuple[int, int, int]] = [] + deaths: list[tuple[int, str]] = [] + for index, event in enumerate(events): + if ( + type(cast(object, event)) is not FrozenDict + or type(event.get("kind")) is not str + ): + raise ArtifactError("notable event has malformed structure") + kind = cast(str, event["kind"]) + tick = _exact_int(event.get("tick"), "event tick", minimum=0) + if tick < previous_tick: + raise ArtifactError("notable event ticks are not monotonic") + previous_tick = tick + if kind == "birth": + expected = {"kind", "tick", "parent_id", "child_id"} + parent_id = _exact_int(event.get("parent_id"), "birth parent ID", minimum=1) + child_id = _exact_int(event.get("child_id"), "birth child ID", minimum=1) + births.append((parent_id, child_id, tick)) + elif kind == "death": + expected = {"kind", "tick", "organism_id", "cause"} + organism_id = _exact_int( + event.get("organism_id"), "death organism ID", minimum=1 + ) + if type(event.get("cause")) is not str or not event["cause"]: + raise ArtifactError("death cause must be a non-empty string") + deaths.append((organism_id, cast(str, event["cause"]))) + elif kind == "terminal": + expected = {"kind", "tick", "status"} + terminal_events += 1 + if ( + index != len(events) - 1 + or event.get("status") != status + or tick != ticks_completed + ): + raise ArtifactError("terminal event disagrees with artifact terminal state") + else: + raise ArtifactError("unknown notable event kind") + if set(event) != expected: + raise ArtifactError("notable event has malformed keys") + if kind != "terminal" and tick >= ticks_completed: + raise ArtifactError("non-terminal event must precede terminal tick") + if terminal_events != 1: + raise ArtifactError("artifact must contain exactly one terminal event") + world = cast(dict[str, object], config["world"]) + max_entities = cast(int, world["max_entities"]) + if len(events) > 2 * max_entities + 1: + raise ArtifactError("notable event count exceeds configured bound") + lineage_births = [ + ( + cast(int, edge["parent_id"]), + cast(int, edge["child_id"]), + cast(int, edge["tick"]), + ) + for edge in lineage + ] + if sorted(births) != sorted(lineage_births): + raise ArtifactError("birth events do not correspond one-to-one with lineage") + dead_states = [ + (cast(int, item["id"]), cast(str, item["death_cause"])) + for item in organisms + if item["alive"] is False + ] + if sorted(deaths) != sorted(dead_states): + raise ArtifactError("death events do not correspond one-to-one with dead states") diff --git a/antelab/artifacts/writer.py b/antelab/artifacts/writer.py new file mode 100644 index 0000000..dfae4cc --- /dev/null +++ b/antelab/artifacts/writer.py @@ -0,0 +1,19 @@ +"""Deterministic artifact serialization.""" + +import json +from pathlib import Path + +from antelab.artifacts.schema import RunArtifact + + +def write_artifact(artifact: RunArtifact, path: Path) -> None: + artifact.validate() + payload = json.dumps( + artifact.to_dict(), + ensure_ascii=True, + sort_keys=True, + separators=(",", ":"), + allow_nan=False, + ) + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(payload + "\n", encoding="utf-8") diff --git a/antelab/cli.py b/antelab/cli.py new file mode 100644 index 0000000..b5cc42a --- /dev/null +++ b/antelab/cli.py @@ -0,0 +1,58 @@ +"""Command-line entry point for deterministic AnteLab experiments.""" + +from __future__ import annotations + +import argparse +import sys +from collections.abc import Sequence +from pathlib import Path + +from yaml import YAMLError + +from antelab.artifacts import ArtifactError +from antelab.core.config import ConfigError +from antelab.experiments.runner import run_experiment + + +def _parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser(prog="antelab") + commands = parser.add_subparsers(dest="command", required=True) + run = commands.add_parser("run") + run.add_argument("config", type=Path) + run.add_argument("--output", type=Path, required=True) + run.add_argument("--ticks", type=int) + return parser + + +def main(argv: Sequence[str] | None = None) -> int: + """Run the CLI and return its stable process exit code.""" + + try: + arguments = _parser().parse_args(argv) + except SystemExit as error: + return error.code if type(error.code) is int else 2 + + try: + artifact = run_experiment( + arguments.config, + output=arguments.output, + tick_override=arguments.ticks, + ) + artifact.validate() + except (ConfigError, OSError, UnicodeError, YAMLError) as error: + print(f"error: {error}", file=sys.stderr) + return 2 + except (RuntimeError, ArtifactError) as error: + print(f"engine error: {error}", file=sys.stderr) + return 3 + + print( + f"run_id={artifact.run_id} status={artifact.status} " + f"ticks={artifact.ticks_completed} population={artifact.summary['population']} " + f"checksum={artifact.final_checksum}" + ) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/antelab/config/__init__.py b/antelab/config/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/antelab/config/company.yaml b/antelab/config/company.yaml deleted file mode 100644 index 6382baa..0000000 --- a/antelab/config/company.yaml +++ /dev/null @@ -1,152 +0,0 @@ -# ============================================================================= -# AnteLab Company Simulation Configuration -# ============================================================================= -# Loaded as an independent config layer for company emergence experiments. -# All thresholds, shock pools, and parameters live here so experiments can -# override them without touching engine code. -# -# For experiment files that extend default.yaml, the company section below -# is merged via the standard extends chain. - -company: - - # --- Stage progression thresholds --- - # Company advances to the next stage when these minimums are met. - stages: ["garage", "workshop", "formal", "scale", "mature"] - - stage_thresholds: - team_size_min: - workshop: 3 - formal: 6 - scale: 12 - mature: 20 - departments_min: - formal: 1 - scale: 2 - mature: 4 - cumulative_revenue_min: - workshop: 50 - formal: 200 - scale: 1000 - mature: 5000 - - # --- Market system --- - market: - demand_difficulty_by_stage: - garage: 1 - workshop: 2 - formal: 3 - scale: 4 - mature: 5 - max_open_demands: 5 - demand_generation_every: 3 - reward_base: - garage: 5 - workshop: 15 - formal: 40 - scale: 100 - mature: 500 - reward_spread: 0.5 - deadline_ticks_base: - garage: 10 - workshop: 15 - formal: 20 - scale: 30 - mature: 50 - shocks: - garage: [] - workshop: - - kind: demand_shift - weight: 0.3 - description: "A key client changes requirements mid-project." - - kind: economic_downturn - weight: 0.2 - description: "Local economy tightens; customer budgets shrink." - formal: - - kind: demand_shift - weight: 0.25 - description: "Enterprise client mandates new compliance rules." - - kind: competitor_entry - weight: 0.2 - description: "A well-funded competitor enters the market." - - kind: economic_downturn - weight: 0.15 - description: "Sector-wide downturn hits recurring revenue." - scale: - - kind: demand_shift - weight: 0.2 - description: "Regulatory change forces product adaptation." - - kind: competitor_entry - weight: 0.3 - description: "Multiple competitors launch competing products." - - kind: boom - weight: 0.25 - description: "Market tailwind doubles demand temporarily." - - kind: economic_downturn - weight: 0.1 - description: "Macroeconomic shock reduces enterprise spending." - mature: - - kind: competitor_entry - weight: 0.2 - description: "Disruptive startup challenges core business line." - - kind: economic_downturn - weight: 0.25 - description: "Global recession pressures multi-year contracts." - - kind: boom - weight: 0.3 - description: "Strategic partnership unlocks new market segment." - - kind: demand_shift - weight: 0.15 - description: "Technology inflection point shifts customer needs." - global: - - kind: economic_downturn - weight: 0.1 - description: "Cross-sector uncertainty dampens all demand." - - # --- Pattern detector --- - pattern: - window_ticks: 20 - threshold: 5 - categories: - - DELIVERY - - CRAFTING - - COORDINATION - - DELEGATION - - PLANNING - suggestion_expiry_ticks: 5 - - # --- Organization system --- - org: - max_departments: 12 - auto_departments_from_suggestions: true - min_members_for_team: 2 - - # --- Valuation model --- - valuation: - ipo_valuation_target: 10000000000 - ipo_consecutive_profitable_ticks: 5 - ipo_min_team_size: 5 - ipo_min_departments: 1 - weights: - cumulative_revenue: 10.0 - revenue_growth_rate: 100.0 - team_size: 5.0 - org_complexity: 2.0 - demand_completion_rate: 50.0 - cash_reserve: 2.0 - growth_rate_window_ticks: 10 - - # --- Office space --- - space: - stages: ["garage", "office", "floor", "campus"] - capacity_by_stage: - garage: 3 - office: 8 - floor: 20 - campus: 50 - expansion_cost_by_stage: - office: 50 - floor: 200 - campus: 1000 - capacity_pressure_ticks: 3 - stress_per_overcapacity: 2 diff --git a/antelab/config/default.yaml b/antelab/config/default.yaml deleted file mode 100644 index e7211c9..0000000 --- a/antelab/config/default.yaml +++ /dev/null @@ -1,191 +0,0 @@ -# ============================================================================= -# AnteLab Configuration -# ============================================================================= - -world: - name: "AnteLab World" # Display name for the simulation - - initial_locations: # Flat list of location IDs (no adjacency yet) - - "town_square" - - "market" - - "residential_area" - - location_graph: # Spatial adjacency map (fallback: fully connected) - town_square: ["market", "residential_area"] - market: ["town_square"] - residential_area: ["town_square"] - - location_items: # Resources placed at locations at startup - market: # key = location ID - bread: 10 # value = { item_name: quantity } - apple: 5 - town_square: - stone: 20 - - recipes: # Crafting recipes (resource conservation) - bread_bundle: - inputs: - wheat: 2 - outputs: - bread: 1 - - event_log_limit: 2000 # Keep latest N world events in memory - -scenario: - id: baseline - title: Baseline - hypothesis: Default physics produce the control run. - counter_hypothesis: Default physics are insufficient for stable emergence. - tags: [baseline] - -long_run: - ticks: 1000 - seed: 42 - benchmark_agents: 30 - diagnostics_every: 100 - artifact_every: 10 - -pressure: - survival: - enabled: true - resources: - enabled: true - decay_every: 0 - storage_decay_multiplier: 0.25 - regeneration_every: 0 - disease: - enabled: true - environment: - enabled: false - season_length_ticks: 500 - -llm: - mode: "mock" # "mock" = deterministic dev mode (no API calls) - # "openai" = OpenAI API (requires OPENAI_API_KEY) - # "anthropic" = Anthropic API (requires ANTHROPIC_API_KEY) - model: "gpt-4o-mini" # Model name (used when mode != "mock") - temperature: 0.7 # LLM sampling temperature - max_tokens: 512 # Max tokens per LLM response - -server: - host: "127.0.0.1" # API server bind address ("0.0.0.0" for Docker) - port: 8080 # API server port - log_level: "INFO" # Logging level: DEBUG, INFO, WARNING, ERROR - -lifecycle: - age_tick_step: 1 # Age progression applied each world tick - life_stage_thresholds: # age_ticks boundary for stage transitions - juvenile: 20 - adult: 60 - elder: 360 - vitality_loss_per_tick: 1 # Baseline vitality decay per tick - vitality_rest_gain: 2 # Vitality recovered when an agent rests - stress_gain_per_tick: 1 # Baseline stress increase when active - stress_rest_reduction: 2 # Stress reduced by resting - disease_exposure_threshold: 3 # Local exposure count before infection - disease_vitality_penalty: 2 # Additional vitality loss while infected - disease_stress_penalty: 1 # Additional stress gain while infected - disease_recovery_ticks: 8 # Infected duration before deterministic recovery - disease_transmission_base_chance: 0.08 # Baseline per-tick local transmission probability - disease_contact_weight: 0.22 # Transmission boost per infectious neighbor - disease_exposure_weight: 0.1 # Transmission boost per accumulated exposure - disease_resilience_protection_weight: 0.5 # Immunity protection against transmission - disease_need_vulnerability_weight: 0.25 # Needs/stress vulnerability influence on transmission - disease_recovery_base_chance: 0.05 # Baseline probabilistic recovery each tick - disease_recovery_resilience_weight: 0.45 # Recovery boost from immune resilience - disease_recovery_rest_bonus: 0.2 # Recovery bonus when resting - disease_exposure_decay_per_tick: 1 # Exposure decay while not near infectious peers - hunger_gain_per_tick: 1 # Hunger increase while living/acting - hunger_rest_reduction: 1 # Hunger relief per rest tick - fatigue_gain_per_tick: 1 # Fatigue increase while active - fatigue_rest_reduction: 3 # Fatigue relief per rest tick - hunger_vitality_penalty_threshold: 70 # Hunger above threshold drains vitality - fatigue_stress_penalty_threshold: 70 # Fatigue above threshold increases stress - needs_penalty: 2 # Penalty magnitude for unmet needs - auto_eat_hunger_threshold: 50 # Hunger threshold to auto-consume carried food - nourishment_gain_per_food: 20 # Hunger reduced per consumed food unit - food_items: ["bread", "apple"] # Items treated as edible nourishment - conception_base_chance: 0.06 # Baseline pregnancy chance per eligible local pair tick - conception_vitality_weight: 0.45 # Positive fertility pressure from pair vitality - conception_stress_weight: 0.35 # Stress penalty applied to pair conception chance - conception_hunger_weight: 0.25 # Hunger penalty applied to pair conception chance - conception_infection_penalty: 0.4 # Infection penalty per infectious participant - conception_trust_weight: 0.15 # Trust bonus applied to pair conception chance - conception_obligation_weight: 0.08 # Obligation friction applied to pair conception chance - conception_min_vitality: 55 # Minimum vitality needed for conception - conception_max_stress: 60 # Maximum stress allowed for conception - pregnancy_duration_min_ticks: 16 # Minimum pregnancy duration (stochastic) - pregnancy_duration_max_ticks: 32 # Maximum pregnancy duration (stochastic) - social_memory_max_entries: 64 # Bound for trust/obligation maps per agent - -# --- Experiment Configuration (Civilization Laboratory) --- -experiment: - name: "baseline" # Experiment identifier - description: "Default physics — control group" - seed: 42 # Random seed for reproducibility - - axioms: # Physics dials — each can be varied per experiment - perception: "local" # local | global - communication: "colocated" # colocated | broadcast | silent - social_tracking: true # true = engine tracks trust/obligation | false = pure physics - auto_eat: false # true = engine auto-consumes food | false = agent-decided - mortality: true # true = agents can die | false = immortal - memory_size: 50 # Agent memory buffer size (events) - -narrative: - enabled: true # Generate LLM narrative commentary - model: "inherit" # LLM model (inherit uses llm.mode setting) - max_tokens: 256 # Max tokens per narrative generation - temperature: 0.7 # Narrative creativity (0=terse, 1=colorful) - generate_every_ticks: 1 # Generate every N ticks - -history: - path: "" # Optional snapshot store path (empty => OS temp path) - max_entries: 500 # Keep latest N snapshots in memory - compact_every: 100 # Rewrite history file every N appends - -agents: # Agent definitions — loaded at startup - - name: "Marcus" - personality: "Charming trader; weighs every favor in food and remembers every debt." - location: "town_square" - inventory: - bread: 1 - - - name: "Sarah" - personality: "Observant, conflicted witness; carries a secret about the group's first fracture." - location: "town_square" - inventory: - apple: 1 - - - name: "Eli" - personality: "Reserved strategist; speaks rarely, plans several moves ahead." - location: "market" - inventory: {} - - - name: "Nina" - personality: "Nurturing but exhausted caregiver; resenting how much others take." - location: "residential_area" - inventory: - bread: 1 - - - name: "Viktor" - personality: "Stern elder; pushes duty rotas and fair shares after surviving collapse once." - location: "residential_area" - inventory: - apple: 1 - - - name: "Jade" - personality: "Provocative wit; tests boundaries on purpose — boredom and anger masked as jokes." - location: "town_square" - inventory: {} - - - name: "Omar" - personality: "Calm mediator; translates fights into schedules, running on too little sleep." - location: "market" - inventory: - apple: 1 - - - name: "Rosa" - personality: "Meticulous scribe; keeps the official log and feels the pull of narrative power." - location: "residential_area" - inventory: {} diff --git a/antelab/config/identity.py b/antelab/config/identity.py deleted file mode 100644 index e5586a6..0000000 --- a/antelab/config/identity.py +++ /dev/null @@ -1,150 +0,0 @@ -"""Stable run identity helpers for configuration-derived artifacts.""" - -from __future__ import annotations - -import hashlib -import json -from typing import NotRequired, TypedDict - -from antelab.config.loader import AnteLabConfig - - -class ConfigHashPayload(TypedDict): - """Hash input for run-defining configuration. - - The experiment seed is intentionally part of the hash for compatibility with - existing API run metadata: changing the deterministic random stream changes - run identity. Runtime server/history settings are excluded because they only - affect serving and persistence. - """ - - world: dict[str, object] - llm: dict[str, object] - lifecycle: dict[str, object] - pressure: dict[str, object] - experiment: dict[str, object] - scenario: dict[str, object] - long_run: dict[str, object] - agents: list[dict[str, object]] - schema_version: NotRequired[int] - - -def config_hash_payload(cfg: AnteLabConfig) -> ConfigHashPayload: - """Build the explicit stable payload used for config hashing.""" - return { - "schema_version": 2, - "world": { - "name": cfg.world.name, - "initial_locations": cfg.world.initial_locations, - "location_graph": cfg.world.location_graph, - "location_items": cfg.world.location_items, - "resource_zones": cfg.world.resource_zones, - "recipes": cfg.world.recipes, - "event_log_limit": cfg.world.event_log_limit, - }, - "llm": { - "mode": cfg.llm.mode, - "model": cfg.llm.model, - "temperature": cfg.llm.temperature, - "max_tokens": cfg.llm.max_tokens, - }, - "lifecycle": { - "age_tick_step": cfg.lifecycle.age_tick_step, - "life_stage_thresholds": cfg.lifecycle.life_stage_thresholds, - "vitality_loss_per_tick": cfg.lifecycle.vitality_loss_per_tick, - "vitality_rest_gain": cfg.lifecycle.vitality_rest_gain, - "stress_gain_per_tick": cfg.lifecycle.stress_gain_per_tick, - "stress_rest_reduction": cfg.lifecycle.stress_rest_reduction, - "disease_exposure_threshold": cfg.lifecycle.disease_exposure_threshold, - "disease_vitality_penalty": cfg.lifecycle.disease_vitality_penalty, - "disease_stress_penalty": cfg.lifecycle.disease_stress_penalty, - "disease_recovery_ticks": cfg.lifecycle.disease_recovery_ticks, - "disease_transmission_base_chance": cfg.lifecycle.disease_transmission_base_chance, - "disease_contact_weight": cfg.lifecycle.disease_contact_weight, - "disease_exposure_weight": cfg.lifecycle.disease_exposure_weight, - "disease_resilience_protection_weight": ( - cfg.lifecycle.disease_resilience_protection_weight - ), - "disease_need_vulnerability_weight": cfg.lifecycle.disease_need_vulnerability_weight, - "disease_recovery_base_chance": cfg.lifecycle.disease_recovery_base_chance, - "disease_recovery_resilience_weight": cfg.lifecycle.disease_recovery_resilience_weight, - "disease_recovery_rest_bonus": cfg.lifecycle.disease_recovery_rest_bonus, - "disease_exposure_decay_per_tick": cfg.lifecycle.disease_exposure_decay_per_tick, - "hunger_gain_per_tick": cfg.lifecycle.hunger_gain_per_tick, - "hunger_rest_reduction": cfg.lifecycle.hunger_rest_reduction, - "fatigue_gain_per_tick": cfg.lifecycle.fatigue_gain_per_tick, - "fatigue_rest_reduction": cfg.lifecycle.fatigue_rest_reduction, - "hunger_vitality_penalty_threshold": cfg.lifecycle.hunger_vitality_penalty_threshold, - "fatigue_stress_penalty_threshold": cfg.lifecycle.fatigue_stress_penalty_threshold, - "needs_penalty": cfg.lifecycle.needs_penalty, - "auto_eat_hunger_threshold": cfg.lifecycle.auto_eat_hunger_threshold, - "nourishment_gain_per_food": cfg.lifecycle.nourishment_gain_per_food, - "food_items": cfg.lifecycle.food_items, - "conception_base_chance": cfg.lifecycle.conception_base_chance, - "conception_vitality_weight": cfg.lifecycle.conception_vitality_weight, - "conception_stress_weight": cfg.lifecycle.conception_stress_weight, - "conception_hunger_weight": cfg.lifecycle.conception_hunger_weight, - "conception_infection_penalty": cfg.lifecycle.conception_infection_penalty, - "conception_trust_weight": cfg.lifecycle.conception_trust_weight, - "conception_obligation_weight": cfg.lifecycle.conception_obligation_weight, - "conception_min_vitality": cfg.lifecycle.conception_min_vitality, - "conception_max_stress": cfg.lifecycle.conception_max_stress, - "pregnancy_duration_min_ticks": cfg.lifecycle.pregnancy_duration_min_ticks, - "pregnancy_duration_max_ticks": cfg.lifecycle.pregnancy_duration_max_ticks, - "social_memory_max_entries": cfg.lifecycle.social_memory_max_entries, - }, - "pressure": { - "survival": {"enabled": cfg.pressure.survival.enabled}, - "resources": { - "enabled": cfg.pressure.resources.enabled, - "decay_every": cfg.pressure.resources.decay_every, - "storage_decay_multiplier": cfg.pressure.resources.storage_decay_multiplier, - "regeneration_every": cfg.pressure.resources.regeneration_every, - }, - "disease": {"enabled": cfg.pressure.disease.enabled}, - "environment": { - "enabled": cfg.pressure.environment.enabled, - "season_length_ticks": cfg.pressure.environment.season_length_ticks, - }, - }, - "experiment": { - "name": cfg.experiment.name, - "description": cfg.experiment.description, - "seed": cfg.experiment.seed, - "perception": cfg.experiment.perception, - "communication": cfg.experiment.communication, - "social_tracking": cfg.experiment.social_tracking, - "auto_eat": cfg.experiment.auto_eat, - "mortality": cfg.experiment.mortality, - "memory_size": cfg.experiment.memory_size, - }, - "scenario": { - "id": cfg.scenario.id, - "title": cfg.scenario.title, - "hypothesis": cfg.scenario.hypothesis, - "counter_hypothesis": cfg.scenario.counter_hypothesis, - "tags": cfg.scenario.tags, - }, - "long_run": { - "ticks": cfg.long_run.ticks, - "seed": cfg.long_run.seed, - "benchmark_agents": cfg.long_run.benchmark_agents, - "diagnostics_every": cfg.long_run.diagnostics_every, - "artifact_every": cfg.long_run.artifact_every, - }, - "agents": [ - { - "name": agent.name, - "personality": agent.personality, - "location": agent.location, - "inventory": agent.inventory, - } - for agent in cfg.agents - ], - } - - -def config_hash(cfg: AnteLabConfig) -> str: - """Return a stable SHA-256 hash for run-defining config fields.""" - serialized = json.dumps(config_hash_payload(cfg), sort_keys=True, ensure_ascii=True) - return hashlib.sha256(serialized.encode("utf-8")).hexdigest() diff --git a/antelab/config/loader.py b/antelab/config/loader.py deleted file mode 100644 index 27adb82..0000000 --- a/antelab/config/loader.py +++ /dev/null @@ -1,870 +0,0 @@ -"""Configuration loading: YAML file + environment variable overrides. - -Override chain (lowest to highest priority): - 1. Built-in defaults (dataclass defaults) - 2. Config file (default.yaml or ANTELAB_CONFIG_PATH) - 3. Environment variables (ANTELAB_* prefix) -""" - -from __future__ import annotations - -import os -import tempfile -from dataclasses import dataclass, field -from pathlib import Path -from typing import Any - -import yaml - -from antelab.llm.narrative import NarrativeConfig - -_DEFAULT_CONFIG_PATH = Path(__file__).parent / "default.yaml" - - -def _read_yaml_file(path: Path) -> dict[str, Any]: - with path.open(encoding="utf-8") as f: - loaded = yaml.safe_load(f) or {} - if not isinstance(loaded, dict): - raise ValueError(f"Config file must contain a mapping: {path}") - return loaded - - -def _deep_merge_dicts(base: dict[str, Any], override: dict[str, Any]) -> dict[str, Any]: - merged: dict[str, Any] = dict(base) - replace_keys = { - "location_graph", - "location_items", - "resource_zones", - "recipes", - "demand_streams", - "candidate_pool", - "survival_gauntlet", - "shocks", - } - for key, value in override.items(): - if key in replace_keys: - merged[key] = value - continue - if key in merged and isinstance(merged[key], dict) and isinstance(value, dict): - merged[key] = _deep_merge_dicts(merged[key], value) - else: - merged[key] = value - return merged - - -def _load_raw_config(path: Path, stack: set[Path] | None = None) -> dict[str, Any]: - chain = stack or set() - resolved = path.resolve() - if resolved in chain: - raise ValueError(f"Cyclic config extends detected at: {resolved}") - chain.add(resolved) - - if not resolved.exists(): - raise FileNotFoundError(f"Config file not found: {resolved}") - - raw = _read_yaml_file(resolved) - extends = raw.pop("extends", None) - if extends is None: - chain.remove(resolved) - return raw - - if isinstance(extends, str): - parent_refs = [extends] - elif isinstance(extends, list) and all(isinstance(item, str) for item in extends): - parent_refs = extends - else: - raise ValueError(f"Invalid 'extends' format in {resolved}. Expected string or string list.") - - merged_parent: dict[str, Any] = {} - for parent_ref in parent_refs: - parent_path = Path(parent_ref) - if not parent_path.is_absolute(): - parent_path = (resolved.parent / parent_path).resolve() - parent_raw = _load_raw_config(parent_path, chain) - merged_parent = _deep_merge_dicts(merged_parent, parent_raw) - - chain.remove(resolved) - return _deep_merge_dicts(merged_parent, raw) - - -@dataclass -class LLMConfig: - mode: str = "mock" - model: str = "gpt-4o-mini" - temperature: float = 0.7 - max_tokens: int = 512 - - -@dataclass -class LifecycleConfig: - age_tick_step: int = 1 - life_stage_thresholds: dict[str, int] = field( - default_factory=lambda: { - "juvenile": 20, - "adult": 60, - "elder": 360, - } - ) - vitality_loss_per_tick: int = 1 - vitality_rest_gain: int = 2 - stress_gain_per_tick: int = 1 - stress_rest_reduction: int = 2 - disease_exposure_threshold: int = 3 - disease_vitality_penalty: int = 2 - disease_stress_penalty: int = 1 - disease_recovery_ticks: int = 8 - disease_transmission_base_chance: float = 0.08 - disease_contact_weight: float = 0.22 - disease_exposure_weight: float = 0.1 - disease_resilience_protection_weight: float = 0.5 - disease_need_vulnerability_weight: float = 0.25 - disease_recovery_base_chance: float = 0.05 - disease_recovery_resilience_weight: float = 0.45 - disease_recovery_rest_bonus: float = 0.2 - disease_exposure_decay_per_tick: int = 1 - hunger_gain_per_tick: int = 1 - hunger_rest_reduction: int = 1 - fatigue_gain_per_tick: int = 1 - fatigue_rest_reduction: int = 3 - hunger_vitality_penalty_threshold: int = 70 - fatigue_stress_penalty_threshold: int = 70 - needs_penalty: int = 2 - auto_eat_hunger_threshold: int = 50 - nourishment_gain_per_food: int = 20 - food_items: list[str] = field(default_factory=lambda: ["bread", "apple"]) - conception_base_chance: float = 0.06 - conception_vitality_weight: float = 0.45 - conception_stress_weight: float = 0.35 - conception_hunger_weight: float = 0.25 - conception_infection_penalty: float = 0.4 - conception_trust_weight: float = 0.15 - conception_obligation_weight: float = 0.08 - conception_min_vitality: int = 55 - conception_max_stress: int = 60 - pregnancy_duration_min_ticks: int = 16 - pregnancy_duration_max_ticks: int = 32 - social_memory_max_entries: int = 64 - - -@dataclass -class SurvivalPressureConfig: - enabled: bool = True - - -@dataclass -class ResourcePressureConfig: - enabled: bool = True - decay_every: int = 0 - storage_decay_multiplier: float = 0.25 - regeneration_every: int = 0 - - -@dataclass -class DiseasePressureConfig: - enabled: bool = True - - -@dataclass -class EnvironmentPressureConfig: - enabled: bool = False - season_length_ticks: int = 500 - - -@dataclass -class PressureConfig: - survival: SurvivalPressureConfig = field(default_factory=SurvivalPressureConfig) - resources: ResourcePressureConfig = field(default_factory=ResourcePressureConfig) - disease: DiseasePressureConfig = field(default_factory=DiseasePressureConfig) - environment: EnvironmentPressureConfig = field(default_factory=EnvironmentPressureConfig) - - -@dataclass -class ServerConfig: - host: str = "127.0.0.1" - port: int = 8080 - log_level: str = "INFO" - - -@dataclass -class HistoryConfig: - path: str = str(Path(tempfile.gettempdir()) / "antelab" / "history.jsonl") - max_entries: int = 500 - compact_every: int = 100 - - -@dataclass -class WorldConfig: - name: str = "AnteLab World" - initial_locations: list[str] = field( - default_factory=lambda: ["town_square", "market", "residential_area"] - ) - location_graph: dict[str, list[str]] = field(default_factory=dict) - location_items: dict[str, dict[str, int]] = field(default_factory=dict) - resource_zones: dict[str, dict[str, dict[str, int]]] = field(default_factory=dict) - recipes: dict[str, dict[str, dict[str, int]]] = field(default_factory=dict) - event_log_limit: int = 2000 - - -def _normalize_location_graph( - initial_locations: list[str], - location_graph: dict[str, Any], -) -> dict[str, list[str]]: - if not location_graph: - # Backward-compatible fallback: fully connected graph. - return { - loc: [o for o in initial_locations if o != loc] - for loc in initial_locations - } - - normalized: dict[str, list[str]] = {} - known_locations = set(initial_locations) - for node, neighbors_raw in location_graph.items(): - if node not in known_locations: - raise ValueError(f"location_graph contains unknown node: {node}") - if not isinstance(neighbors_raw, list): - raise ValueError(f"location_graph[{node}] must be a list") - normalized_neighbors: list[str] = [] - for neighbor in neighbors_raw: - if neighbor not in known_locations: - raise ValueError(f"location_graph[{node}] references unknown neighbor: {neighbor}") - if neighbor not in normalized_neighbors: - normalized_neighbors.append(neighbor) - normalized[node] = normalized_neighbors - - for location in initial_locations: - normalized.setdefault(location, []) - - return normalized - - -def _normalize_recipes( - recipes_raw: dict[str, Any], -) -> dict[str, dict[str, dict[str, int]]]: - normalized: dict[str, dict[str, dict[str, int]]] = {} - for recipe_name, recipe_def in recipes_raw.items(): - if not isinstance(recipe_def, dict): - raise ValueError(f"Recipe '{recipe_name}' must be a mapping") - inputs_raw = recipe_def.get("inputs", {}) - outputs_raw = recipe_def.get("outputs", {}) - if not isinstance(inputs_raw, dict) or not isinstance(outputs_raw, dict): - raise ValueError(f"Recipe '{recipe_name}' must contain mapping inputs/outputs") - if not inputs_raw or not outputs_raw: - raise ValueError(f"Recipe '{recipe_name}' cannot have empty inputs/outputs") - inputs: dict[str, int] = {} - outputs: dict[str, int] = {} - for item, qty in inputs_raw.items(): - qty_int = int(qty) - if qty_int <= 0: - raise ValueError( - f"Recipe '{recipe_name}' has non-positive " - f"input quantity for '{item}'" - ) - inputs[str(item)] = qty_int - for item, qty in outputs_raw.items(): - qty_int = int(qty) - if qty_int <= 0: - raise ValueError( - f"Recipe '{recipe_name}' has non-positive " - f"output quantity for '{item}'" - ) - outputs[str(item)] = qty_int - normalized[recipe_name] = {"inputs": inputs, "outputs": outputs} - return normalized - - -def _normalize_resource_zones( - initial_locations: list[str], - zones_raw: dict[str, Any], -) -> dict[str, dict[str, dict[str, int]]]: - if not isinstance(zones_raw, dict): - raise ValueError("resource_zones must be a mapping") - normalized: dict[str, dict[str, dict[str, int]]] = {} - known = set(initial_locations) - for location, resources in zones_raw.items(): - if location not in known: - raise ValueError(f"resource_zones contains unknown location: {location}") - if not isinstance(resources, dict): - raise ValueError(f"resource_zones[{location}] must be a mapping") - normalized[location] = {} - for item, spec in resources.items(): - if not isinstance(spec, dict): - raise ValueError(f"resource_zones[{location}][{item}] must be a mapping") - quantity = _positive_int( - spec.get("quantity", 1), - f"resource_zones.{location}.{item}.quantity", - ) - every = _positive_int( - spec.get("every", 1), - f"resource_zones.{location}.{item}.every", - ) - normalized[location][str(item)] = {"quantity": quantity, "every": every} - return normalized - - -@dataclass -class AgentDef: - name: str = "" - personality: str = "" - location: str = "" - inventory: dict[str, int] = field(default_factory=dict) - - -@dataclass -class ExperimentConfig: - """Experiment axiom toggles for the civilization laboratory.""" - - name: str = "baseline" - description: str = "Default physics — control group" - seed: int = 42 - perception: str = "local" - communication: str = "colocated" - social_tracking: bool = True - auto_eat: bool = False - mortality: bool = True - memory_size: int = 50 - - -@dataclass -class ScenarioConfig: - id: str = "baseline" - title: str = "Baseline" - hypothesis: str = "" - counter_hypothesis: str = "" - tags: list[str] = field(default_factory=list) - - -@dataclass -class LongRunConfig: - ticks: int = 1000 - seed: int = 42 - benchmark_agents: int = 30 - diagnostics_every: int = 100 - artifact_every: int = 10 - - -@dataclass -class CompanyMarketConfig: - demand_difficulty_by_stage: dict[str, int] = field( - default_factory=lambda: { - "garage": 1, "workshop": 2, "formal": 3, "scale": 4, "mature": 5, - } - ) - max_open_demands: int = 5 - demand_generation_every: int = 3 - reward_base: dict[str, int] = field( - default_factory=lambda: { - "garage": 5, "workshop": 15, "formal": 40, "scale": 100, "mature": 500, - } - ) - reward_spread: float = 0.5 - deadline_ticks_base: dict[str, int] = field( - default_factory=lambda: { - "garage": 10, "workshop": 15, "formal": 20, "scale": 30, "mature": 50, - } - ) - shocks: dict[str, list[dict[str, Any]]] = field(default_factory=dict) - - -@dataclass -class CompanyPatternConfig: - window_ticks: int = 20 - threshold: int = 5 - categories: list[str] = field( - default_factory=lambda: ["DELIVERY", "CRAFTING", "COORDINATION", "DELEGATION", "PLANNING"] - ) - suggestion_expiry_ticks: int = 5 - - -@dataclass -class CompanyOrgConfig: - max_departments: int = 12 - auto_departments_from_suggestions: bool = True - min_members_for_team: int = 2 - - -@dataclass -class CompanyValuationConfig: - ipo_valuation_target: int = 10_000_000_000 - ipo_consecutive_profitable_ticks: int = 5 - ipo_min_team_size: int = 5 - ipo_min_departments: int = 1 - weights: dict[str, float] = field( - default_factory=lambda: { - "cumulative_revenue": 10.0, - "revenue_growth_rate": 100.0, - "team_size": 5.0, - "org_complexity": 2.0, - "demand_completion_rate": 50.0, - "cash_reserve": 2.0, - } - ) - growth_rate_window_ticks: int = 10 - - -@dataclass -class CompanySpaceConfig: - stages: list[str] = field( - default_factory=lambda: ["garage", "office", "floor", "campus"] - ) - capacity_by_stage: dict[str, int] = field( - default_factory=lambda: {"garage": 3, "office": 8, "floor": 20, "campus": 50} - ) - expansion_cost_by_stage: dict[str, int] = field( - default_factory=lambda: {"office": 50, "floor": 200, "campus": 1000} - ) - capacity_pressure_ticks: int = 3 - stress_per_overcapacity: int = 2 - - -@dataclass -class CompanyConfig: - enabled: bool = False - name: str = "" - stage: str = "founder" - cash: int = 0 - operating_cost_per_tick: int = 0 - demand_streams: list[dict[str, Any]] = field(default_factory=list) - candidate_pool: list[dict[str, Any]] = field(default_factory=list) - survival_gauntlet: dict[str, Any] = field(default_factory=dict) - market: CompanyMarketConfig = field(default_factory=CompanyMarketConfig) - pattern: CompanyPatternConfig = field(default_factory=CompanyPatternConfig) - org: CompanyOrgConfig = field(default_factory=CompanyOrgConfig) - valuation: CompanyValuationConfig = field(default_factory=CompanyValuationConfig) - space: CompanySpaceConfig = field(default_factory=CompanySpaceConfig) - - -@dataclass -class AnteLabConfig: - world: WorldConfig = field(default_factory=WorldConfig) - llm: LLMConfig = field(default_factory=LLMConfig) - lifecycle: LifecycleConfig = field(default_factory=LifecycleConfig) - pressure: PressureConfig = field(default_factory=PressureConfig) - server: ServerConfig = field(default_factory=ServerConfig) - history: HistoryConfig = field(default_factory=HistoryConfig) - experiment: ExperimentConfig = field(default_factory=ExperimentConfig) - scenario: ScenarioConfig = field(default_factory=ScenarioConfig) - long_run: LongRunConfig = field(default_factory=LongRunConfig) - narrative: NarrativeConfig = field(default_factory=NarrativeConfig) - company: CompanyConfig = field(default_factory=CompanyConfig) - agents: list[AgentDef] = field(default_factory=list) - - -def _apply_env_overrides(config: AnteLabConfig) -> None: - """Override config fields with ANTELAB_* environment variables.""" - _env_map: list[tuple[str, Any, str, type]] = [ - ("ANTELAB_LLM_MODE", config.llm, "mode", str), - ("ANTELAB_LLM_MODEL", config.llm, "model", str), - ("ANTELAB_LLM_TEMPERATURE", config.llm, "temperature", float), - ("ANTELAB_LLM_MAX_TOKENS", config.llm, "max_tokens", int), - ("ANTELAB_SERVER_HOST", config.server, "host", str), - ("ANTELAB_SERVER_PORT", config.server, "port", int), - ("ANTELAB_LOG_LEVEL", config.server, "log_level", str), - ("ANTELAB_HISTORY_PATH", config.history, "path", str), - ("ANTELAB_HISTORY_MAX_ENTRIES", config.history, "max_entries", int), - ("ANTELAB_HISTORY_COMPACT_EVERY", config.history, "compact_every", int), - ] - for env_key, obj, attr, typ in _env_map: - val = os.environ.get(env_key) - if val is not None: - setattr(obj, attr, typ(val)) - - -def _build_world_config(raw: dict[str, Any]) -> WorldConfig: - initial_locations = raw.get("initial_locations", ["town_square", "market", "residential_area"]) - location_graph = _normalize_location_graph( - initial_locations=initial_locations, - location_graph=raw.get("location_graph", {}), - ) - recipes = _normalize_recipes(raw.get("recipes", {})) - resource_zones = _normalize_resource_zones( - initial_locations=initial_locations, - zones_raw=raw.get("resource_zones", {}), - ) - return WorldConfig( - name=raw.get("name", "AnteLab World"), - initial_locations=initial_locations, - location_graph=location_graph, - location_items={loc: dict(items) for loc, items in raw.get("location_items", {}).items()}, - resource_zones=resource_zones, - recipes=recipes, - event_log_limit=int(raw.get("event_log_limit", 2000)), - ) - - -def _build_scenario_config(raw: dict[str, Any]) -> ScenarioConfig: - return ScenarioConfig( - id=str(raw.get("id", "baseline")), - title=str(raw.get("title", "Baseline")), - hypothesis=str(raw.get("hypothesis", "")), - counter_hypothesis=str(raw.get("counter_hypothesis", "")), - tags=[str(tag) for tag in raw.get("tags", [])], - ) - - -def _positive_int(raw: Any, field_name: str) -> int: - value = int(raw) - if value <= 0: - raise ValueError(f"{field_name} must be positive") - return value - - -def _non_negative_int(raw: Any, field_name: str) -> int: - value = int(raw) - if value < 0: - raise ValueError(f"{field_name} must be non-negative") - return value - - -def _non_negative_float(raw: Any, field_name: str) -> float: - value = float(raw) - if value < 0: - raise ValueError(f"{field_name} must be non-negative") - return value - - -def _optional_mapping(raw: dict[str, Any], key: str, field_name: str) -> dict[str, Any]: - value = raw.get(key, {}) - if not isinstance(value, dict): - raise ValueError(f"{field_name} must be a mapping") - return value - - -def _build_pressure_config(raw: dict[str, Any]) -> PressureConfig: - survival = _optional_mapping(raw, "survival", "pressure.survival") - resources = _optional_mapping(raw, "resources", "pressure.resources") - disease = _optional_mapping(raw, "disease", "pressure.disease") - environment = _optional_mapping(raw, "environment", "pressure.environment") - return PressureConfig( - survival=SurvivalPressureConfig(enabled=bool(survival.get("enabled", True))), - resources=ResourcePressureConfig( - enabled=bool(resources.get("enabled", True)), - decay_every=_non_negative_int( - resources.get("decay_every", 0), "pressure.resources.decay_every" - ), - storage_decay_multiplier=_non_negative_float( - resources.get("storage_decay_multiplier", 0.25), - "pressure.resources.storage_decay_multiplier", - ), - regeneration_every=_non_negative_int( - resources.get("regeneration_every", 0), - "pressure.resources.regeneration_every", - ), - ), - disease=DiseasePressureConfig(enabled=bool(disease.get("enabled", True))), - environment=EnvironmentPressureConfig( - enabled=bool(environment.get("enabled", False)), - season_length_ticks=_positive_int( - environment.get("season_length_ticks", 500), - "pressure.environment.season_length_ticks", - ), - ), - ) - - -def _build_long_run_config(raw: dict[str, Any]) -> LongRunConfig: - return LongRunConfig( - ticks=_positive_int(raw.get("ticks", 1000), "long_run.ticks"), - seed=int(raw.get("seed", 42)), - benchmark_agents=_positive_int( - raw.get("benchmark_agents", 30), "long_run.benchmark_agents" - ), - diagnostics_every=_positive_int( - raw.get("diagnostics_every", 100), "long_run.diagnostics_every" - ), - artifact_every=_positive_int(raw.get("artifact_every", 10), "long_run.artifact_every"), - ) - - -def _build_company_market_config(raw: dict[str, Any]) -> CompanyMarketConfig: - demand_diff = raw.get("demand_difficulty_by_stage", {}) - reward_base = raw.get("reward_base", {}) - deadline_base = raw.get("deadline_ticks_base", {}) - shocks_raw = raw.get("shocks", {}) - shocks: dict[str, list[dict[str, Any]]] = {} - for stage, shock_list in shocks_raw.items(): - if not isinstance(shock_list, list): - raise ValueError(f"company.market.shocks.{stage} must be a list") - shocks[str(stage)] = [dict(s) for s in shock_list] - return CompanyMarketConfig( - demand_difficulty_by_stage={str(k): int(v) for k, v in demand_diff.items()}, - max_open_demands=_non_negative_int( - raw.get("max_open_demands", 5), "company.market.max_open_demands", - ), - demand_generation_every=_positive_int( - raw.get("demand_generation_every", 3), "company.market.demand_generation_every", - ), - reward_base={str(k): _non_negative_int(v, f"company.market.reward_base.{k}") - for k, v in reward_base.items()}, - reward_spread=_non_negative_float( - raw.get("reward_spread", 0.5), "company.market.reward_spread", - ), - deadline_ticks_base={str(k): _positive_int(v, f"company.market.deadline_ticks_base.{k}") - for k, v in deadline_base.items()}, - shocks=shocks, - ) - - -def _build_company_pattern_config(raw: dict[str, Any]) -> CompanyPatternConfig: - return CompanyPatternConfig( - window_ticks=_positive_int( - raw.get("window_ticks", 20), "company.pattern.window_ticks", - ), - threshold=_positive_int( - raw.get("threshold", 5), "company.pattern.threshold", - ), - categories=[str(c) for c in raw.get("categories", CompanyPatternConfig().categories)], - suggestion_expiry_ticks=_positive_int( - raw.get("suggestion_expiry_ticks", 5), - "company.pattern.suggestion_expiry_ticks", - ), - ) - - -def _build_company_org_config(raw: dict[str, Any]) -> CompanyOrgConfig: - return CompanyOrgConfig( - max_departments=_positive_int( - raw.get("max_departments", 12), "company.org.max_departments", - ), - auto_departments_from_suggestions=bool( - raw.get("auto_departments_from_suggestions", True) - ), - min_members_for_team=_positive_int( - raw.get("min_members_for_team", 2), "company.org.min_members_for_team", - ), - ) - - -def _build_company_valuation_config(raw: dict[str, Any]) -> CompanyValuationConfig: - weights_raw = raw.get("weights", {}) - return CompanyValuationConfig( - ipo_valuation_target=_non_negative_int( - raw.get("ipo_valuation_target", 10_000_000_000), - "company.valuation.ipo_valuation_target", - ), - ipo_consecutive_profitable_ticks=_positive_int( - raw.get("ipo_consecutive_profitable_ticks", 5), - "company.valuation.ipo_consecutive_profitable_ticks", - ), - ipo_min_team_size=_positive_int( - raw.get("ipo_min_team_size", 5), "company.valuation.ipo_min_team_size", - ), - ipo_min_departments=_positive_int( - raw.get("ipo_min_departments", 1), "company.valuation.ipo_min_departments", - ), - weights={str(k): _non_negative_float(v, f"company.valuation.weights.{k}") - for k, v in weights_raw.items()}, - growth_rate_window_ticks=_positive_int( - raw.get("growth_rate_window_ticks", 10), - "company.valuation.growth_rate_window_ticks", - ), - ) - - -def _build_company_space_config(raw: dict[str, Any]) -> CompanySpaceConfig: - cap_raw = raw.get("capacity_by_stage", {}) - cost_raw = raw.get("expansion_cost_by_stage", {}) - return CompanySpaceConfig( - stages=[str(s) for s in raw.get("stages", CompanySpaceConfig().stages)], - capacity_by_stage={ - str(k): _positive_int(v, f"company.space.capacity_by_stage.{k}") - for k, v in cap_raw.items() - }, - expansion_cost_by_stage={ - str(k): _non_negative_int(v, f"company.space.expansion_cost_by_stage.{k}") - for k, v in cost_raw.items() - }, - capacity_pressure_ticks=_positive_int( - raw.get("capacity_pressure_ticks", 3), "company.space.capacity_pressure_ticks", - ), - stress_per_overcapacity=_non_negative_int( - raw.get("stress_per_overcapacity", 2), "company.space.stress_per_overcapacity", - ), - ) - - -def _build_company_config(raw: dict[str, Any]) -> CompanyConfig: - demand_streams_raw = raw.get("demand_streams", []) - if not isinstance(demand_streams_raw, list): - raise ValueError("company.demand_streams must be a list") - candidate_pool_raw = raw.get("candidate_pool", []) - if not isinstance(candidate_pool_raw, list): - raise ValueError("company.candidate_pool must be a list") - survival_gauntlet_raw = raw.get("survival_gauntlet", {}) - if not isinstance(survival_gauntlet_raw, dict): - raise ValueError("company.survival_gauntlet must be a mapping") - return CompanyConfig( - enabled=bool(raw.get("enabled", False)), - name=str(raw.get("name", "")), - stage=str(raw.get("stage", "founder")), - cash=_non_negative_int(raw.get("cash", 0), "company.cash"), - operating_cost_per_tick=_non_negative_int( - raw.get("operating_cost_per_tick", 0), - "company.operating_cost_per_tick", - ), - demand_streams=[dict(item) for item in demand_streams_raw], - candidate_pool=[dict(item) for item in candidate_pool_raw], - survival_gauntlet=dict(survival_gauntlet_raw), - market=_build_company_market_config(raw.get("market", {})), - pattern=_build_company_pattern_config(raw.get("pattern", {})), - org=_build_company_org_config(raw.get("org", {})), - valuation=_build_company_valuation_config(raw.get("valuation", {})), - space=_build_company_space_config(raw.get("space", {})), - ) - - -def _build_agent_defs(raw: list[dict[str, Any]]) -> list[AgentDef]: - return [ - AgentDef( - name=d.get("name", ""), - personality=d.get("personality", ""), - location=d.get("location", ""), - inventory=dict(d.get("inventory", {}) or {}), - ) - for d in raw - ] - - -def load_config(path: Path | None = None) -> AnteLabConfig: - """Load configuration from YAML + apply environment variable overrides.""" - config_path = path - if config_path is None: - env_path = os.environ.get("ANTELAB_CONFIG_PATH") - config_path = Path(env_path) if env_path else _DEFAULT_CONFIG_PATH - - raw: dict[str, Any] = {} - if config_path.exists(): - raw = _load_raw_config(config_path) - - raw_llm = raw.get("llm", {}) - raw_lifecycle = raw.get("lifecycle", {}) - raw_server = raw.get("server", {}) - raw_history = raw.get("history", {}) - raw_world = raw.get("world", {}) - raw_experiment = raw.get("experiment", {}) - raw_axioms = raw_experiment.get("axioms", {}) - raw_scenario = raw.get("scenario", {}) - raw_long_run = raw.get("long_run", {}) - raw_pressure = raw.get("pressure", {}) - raw_narrative = raw.get("narrative", {}) - raw_company = raw.get("company", {}) - raw_agents = raw.get("agents", []) - - config = AnteLabConfig( - world=_build_world_config(raw_world), - llm=LLMConfig( - mode=raw_llm.get("mode", "mock"), - model=raw_llm.get("model", "gpt-4o-mini"), - temperature=float(raw_llm.get("temperature", 0.7)), - max_tokens=int(raw_llm.get("max_tokens", 512)), - ), - lifecycle=LifecycleConfig( - age_tick_step=int(raw_lifecycle.get("age_tick_step", 1)), - life_stage_thresholds=dict( - raw_lifecycle.get( - "life_stage_thresholds", - LifecycleConfig().life_stage_thresholds, - ) - ), - vitality_loss_per_tick=int(raw_lifecycle.get("vitality_loss_per_tick", 1)), - vitality_rest_gain=int(raw_lifecycle.get("vitality_rest_gain", 2)), - stress_gain_per_tick=int(raw_lifecycle.get("stress_gain_per_tick", 1)), - stress_rest_reduction=int(raw_lifecycle.get("stress_rest_reduction", 2)), - disease_exposure_threshold=int(raw_lifecycle.get("disease_exposure_threshold", 3)), - disease_vitality_penalty=int(raw_lifecycle.get("disease_vitality_penalty", 2)), - disease_stress_penalty=int(raw_lifecycle.get("disease_stress_penalty", 1)), - disease_recovery_ticks=int(raw_lifecycle.get("disease_recovery_ticks", 8)), - disease_transmission_base_chance=float( - raw_lifecycle.get("disease_transmission_base_chance", 0.08) - ), - disease_contact_weight=float( - raw_lifecycle.get("disease_contact_weight", 0.22) - ), - disease_exposure_weight=float( - raw_lifecycle.get("disease_exposure_weight", 0.1) - ), - disease_resilience_protection_weight=float( - raw_lifecycle.get("disease_resilience_protection_weight", 0.5) - ), - disease_need_vulnerability_weight=float( - raw_lifecycle.get("disease_need_vulnerability_weight", 0.25) - ), - disease_recovery_base_chance=float( - raw_lifecycle.get("disease_recovery_base_chance", 0.05) - ), - disease_recovery_resilience_weight=float( - raw_lifecycle.get("disease_recovery_resilience_weight", 0.45) - ), - disease_recovery_rest_bonus=float( - raw_lifecycle.get("disease_recovery_rest_bonus", 0.2) - ), - disease_exposure_decay_per_tick=int( - raw_lifecycle.get("disease_exposure_decay_per_tick", 1) - ), - hunger_gain_per_tick=int(raw_lifecycle.get("hunger_gain_per_tick", 1)), - hunger_rest_reduction=int(raw_lifecycle.get("hunger_rest_reduction", 1)), - fatigue_gain_per_tick=int(raw_lifecycle.get("fatigue_gain_per_tick", 1)), - fatigue_rest_reduction=int(raw_lifecycle.get("fatigue_rest_reduction", 3)), - hunger_vitality_penalty_threshold=int( - raw_lifecycle.get("hunger_vitality_penalty_threshold", 70) - ), - fatigue_stress_penalty_threshold=int( - raw_lifecycle.get("fatigue_stress_penalty_threshold", 70) - ), - needs_penalty=int(raw_lifecycle.get("needs_penalty", 2)), - auto_eat_hunger_threshold=int(raw_lifecycle.get("auto_eat_hunger_threshold", 50)), - nourishment_gain_per_food=int(raw_lifecycle.get("nourishment_gain_per_food", 20)), - food_items=list(raw_lifecycle.get("food_items", ["bread", "apple"])), - conception_base_chance=float(raw_lifecycle.get("conception_base_chance", 0.06)), - conception_vitality_weight=float(raw_lifecycle.get("conception_vitality_weight", 0.45)), - conception_stress_weight=float(raw_lifecycle.get("conception_stress_weight", 0.35)), - conception_hunger_weight=float(raw_lifecycle.get("conception_hunger_weight", 0.25)), - conception_infection_penalty=float( - raw_lifecycle.get("conception_infection_penalty", 0.4) - ), - conception_trust_weight=float(raw_lifecycle.get("conception_trust_weight", 0.15)), - conception_obligation_weight=float( - raw_lifecycle.get("conception_obligation_weight", 0.08) - ), - conception_min_vitality=int(raw_lifecycle.get("conception_min_vitality", 55)), - conception_max_stress=int(raw_lifecycle.get("conception_max_stress", 60)), - pregnancy_duration_min_ticks=int(raw_lifecycle.get("pregnancy_duration_min_ticks", 16)), - pregnancy_duration_max_ticks=int(raw_lifecycle.get("pregnancy_duration_max_ticks", 32)), - social_memory_max_entries=int(raw_lifecycle.get("social_memory_max_entries", 64)), - ), - pressure=_build_pressure_config(raw_pressure), - server=ServerConfig( - host=raw_server.get("host", "127.0.0.1"), - port=int(raw_server.get("port", 8080)), - log_level=raw_server.get("log_level", "INFO"), - ), - history=HistoryConfig( - path=str(raw_history.get("path") or HistoryConfig().path), - max_entries=int(raw_history.get("max_entries", 500)), - compact_every=int(raw_history.get("compact_every", 100)), - ), - experiment=ExperimentConfig( - name=raw_experiment.get("name", "baseline"), - description=raw_experiment.get("description", "Default physics — control group"), - seed=int(raw_experiment.get("seed", 42)), - perception=raw_axioms.get("perception", "local"), - communication=raw_axioms.get("communication", "colocated"), - social_tracking=bool(raw_axioms.get("social_tracking", True)), - auto_eat=bool(raw_axioms.get("auto_eat", False)), - mortality=bool(raw_axioms.get("mortality", True)), - memory_size=int(raw_axioms.get("memory_size", 50)), - ), - scenario=_build_scenario_config(raw_scenario), - long_run=_build_long_run_config(raw_long_run), - narrative=NarrativeConfig( - enabled=bool(raw_narrative.get("enabled", True)), - model=str(raw_narrative.get("model", "inherit")), - max_tokens=int(raw_narrative.get("max_tokens", 256)), - temperature=float(raw_narrative.get("temperature", 0.7)), - generate_every_ticks=int(raw_narrative.get("generate_every_ticks", 1)), - ), - company=_build_company_config(raw_company), - agents=_build_agent_defs(raw_agents), - ) - - _apply_env_overrides(config) - return config diff --git a/antelab/api/__init__.py b/antelab/core/__init__.py similarity index 100% rename from antelab/api/__init__.py rename to antelab/core/__init__.py diff --git a/antelab/core/brain.py b/antelab/core/brain.py new file mode 100644 index 0000000..66ec1ac --- /dev/null +++ b/antelab/core/brain.py @@ -0,0 +1,104 @@ +"""Bounded sensor and effector contracts for organism controllers.""" + +from dataclasses import dataclass + +from antelab.core.fixed import UNIT, clamp +from antelab.core.genome import INPUT_COUNT, OUTPUT_COUNT, Genome + + +def _sensor_values(frame: "SensorFrame") -> tuple[int, ...]: + return ( + frame.own_energy, + frame.own_age, + frame.food_distance, + frame.food_bearing, + frame.food_density, + frame.organism_distance, + frame.organism_bearing, + frame.organism_signal, + frame.organism_density, + frame.bias, + ) + + +def _validate_sensor_frame(frame: "SensorFrame") -> None: + values = _sensor_values(frame) + if any(isinstance(value, bool) or not isinstance(value, int) for value in values): + raise ValueError("sensor values must be fixed-point integers") + if any(not -UNIT <= value <= UNIT for value in values): + raise ValueError("sensor values must be within [-UNIT, UNIT]") + + +@dataclass(frozen=True) +class SensorFrame: + own_energy: int + own_age: int + food_distance: int + food_bearing: int + food_density: int + organism_distance: int + organism_bearing: int + organism_signal: int + organism_density: int + bias: int + + def __init_subclass__(cls, **kwargs: object) -> None: + raise TypeError("SensorFrame does not support subclasses") + + def __post_init__(self) -> None: + _validate_sensor_frame(self) + + def values(self) -> tuple[int, ...]: + return _sensor_values(self) + + +def _validate_effector_frame(frame: "EffectorFrame") -> None: + numeric = (frame.turn, frame.thrust, frame.signal) + if any(isinstance(value, bool) or not isinstance(value, int) for value in numeric): + raise ValueError("effector types must use fixed-point integers") + if not isinstance(frame.eat, bool) or not isinstance(frame.reproduce, bool): + raise ValueError("effector types must use booleans for decisions") + if not -UNIT <= frame.turn <= UNIT: + raise ValueError("turn out of range") + if not 0 <= frame.thrust <= UNIT or not 0 <= frame.signal <= UNIT: + raise ValueError("non-negative effector out of range") + + +@dataclass(frozen=True) +class EffectorFrame: + turn: int + thrust: int + eat: bool + signal: int + reproduce: bool + + def __init_subclass__(cls, **kwargs: object) -> None: + raise TypeError("EffectorFrame does not support subclasses") + + def __post_init__(self) -> None: + _validate_effector_frame(self) + + def validate(self) -> None: + _validate_effector_frame(self) + + +def evaluate(genome: Genome, sensors: SensorFrame) -> EffectorFrame: + genome.validate() + if type(sensors) is not SensorFrame: + raise ValueError("sensors must be an exact SensorFrame") + sensor_values = _sensor_values(sensors) + outputs: list[int] = [] + for output_index in range(OUTPUT_COUNT): + total = genome.controller_biases[output_index] * UNIT + for input_index, sensor in enumerate(sensor_values): + weight_index = output_index * INPUT_COUNT + input_index + total += sensor * genome.controller_weights[weight_index] + outputs.append(clamp(total // UNIT, -UNIT, UNIT)) + + return EffectorFrame( + turn=outputs[0], + thrust=clamp(outputs[1], 0, UNIT), + eat=outputs[2] > 0, + signal=clamp(outputs[3], 0, UNIT), + reproduce=outputs[4] > 0, + ) diff --git a/antelab/core/config.py b/antelab/core/config.py new file mode 100644 index 0000000..f731aff --- /dev/null +++ b/antelab/core/config.py @@ -0,0 +1,177 @@ +from dataclasses import asdict, dataclass +from pathlib import Path +from typing import cast + +import yaml + +from antelab.core.fixed import UNIT + + +class ConfigError(ValueError): + pass + + +@dataclass(frozen=True) +class WorldConfig: + width: int + height: int + initial_food: int + max_food: int + food_energy: int + food_regen_per_tick: int + max_entities: int + + +@dataclass(frozen=True) +class LifeConfig: + initial_population: int + initial_energy: int + max_energy: int + max_age: int + reproduction_cooldown: int + + +@dataclass(frozen=True) +class MutationConfig: + probability: int + step: int + + +@dataclass(frozen=True) +class SimulationConfig: + schema_version: int + condition: str + seed: int + ticks: int + world: WorldConfig + life: LifeConfig + mutation: MutationConfig + + @classmethod + def from_mapping(cls, raw: dict[str, object]) -> "SimulationConfig": + _require_exact_keys( + raw, + {"schema_version", "condition", "seed", "ticks", "world", "life", "mutation"}, + "configuration", + ) + world = _mapping(raw, "world") + life = _mapping(raw, "life") + mutation = _mapping(raw, "mutation") + _require_exact_keys( + world, + { + "width", + "height", + "initial_food", + "max_food", + "food_energy", + "food_regen_per_tick", + "max_entities", + }, + "world", + ) + _require_exact_keys( + life, + { + "initial_population", + "initial_energy", + "max_energy", + "max_age", + "reproduction_cooldown", + }, + "life", + ) + _require_exact_keys(mutation, {"probability", "step"}, "mutation") + return cls( + schema_version=_integer(raw, "schema_version", 1), + condition=_string(raw, "condition"), + seed=_integer(raw, "seed"), + ticks=_integer(raw, "ticks", 1), + world=WorldConfig( + width=_integer(world, "width", 1), + height=_integer(world, "height", 1), + initial_food=_integer(world, "initial_food"), + max_food=_integer(world, "max_food"), + food_energy=_integer(world, "food_energy", 1), + food_regen_per_tick=_integer(world, "food_regen_per_tick"), + max_entities=_integer(world, "max_entities", 1), + ), + life=LifeConfig( + initial_population=_integer(life, "initial_population", 1), + initial_energy=_integer(life, "initial_energy", 1), + max_energy=_integer(life, "max_energy", 1), + max_age=_integer(life, "max_age", 1), + reproduction_cooldown=_integer(life, "reproduction_cooldown"), + ), + mutation=MutationConfig( + probability=_integer(mutation, "probability"), + step=_integer(mutation, "step"), + ), + ) + + def validate(self) -> None: + if self.schema_version != 1: + raise ConfigError("schema_version must equal 1") + if self.condition != "uncontrolled_baseline": + raise ConfigError("V1 condition must equal uncontrolled_baseline") + if self.seed > (1 << 64) - 1: + raise ConfigError("seed must fit an unsigned 64-bit integer") + if self.world.width > 1 << 64 or self.world.height > 1 << 64: + raise ConfigError("world dimensions must not exceed 2**64") + if self.world.initial_food > self.world.max_food: + raise ConfigError("initial_food cannot exceed max_food") + if self.life.initial_population > self.world.max_entities: + raise ConfigError("initial_population cannot exceed max_entities") + if self.life.initial_energy > self.life.max_energy: + raise ConfigError("initial_energy cannot exceed max_energy") + if self.mutation.probability > UNIT: + raise ConfigError("mutation probability cannot exceed UNIT") + if self.mutation.step > 4 * UNIT: + raise ConfigError("mutation step cannot exceed 4 * UNIT") + + def to_dict(self) -> dict[str, object]: + return cast(dict[str, object], asdict(self)) + + +def _mapping(mapping: dict[str, object], key: str) -> dict[str, object]: + value = mapping.get(key) + if not isinstance(value, dict) or not all(isinstance(item, str) for item in value): + raise ConfigError(f"{key} must be a string-keyed mapping") + return cast(dict[str, object], value) + + +def _require_exact_keys( + mapping: dict[str, object], + expected: set[str], + label: str, +) -> None: + actual = set(mapping) + if actual != expected: + raise ConfigError( + f"{label} keys differ: missing={sorted(expected - actual)}, " + f"extra={sorted(actual - expected)}" + ) + + +def _string(mapping: dict[str, object], key: str) -> str: + value = mapping.get(key) + if not isinstance(value, str) or not value: + raise ConfigError(f"{key} must be a non-empty string") + return value + + +def _integer(mapping: dict[str, object], key: str, minimum: int = 0) -> int: + value = mapping.get(key) + if isinstance(value, bool) or not isinstance(value, int) or value < minimum: + raise ConfigError(f"{key} must be an integer >= {minimum}") + return value + + +def load_config(path: Path) -> SimulationConfig: + loaded: object = yaml.safe_load(path.read_text(encoding="utf-8")) + if not isinstance(loaded, dict) or not all(isinstance(item, str) for item in loaded): + raise ConfigError("configuration root must be a mapping") + raw = cast(dict[str, object], loaded) + config = SimulationConfig.from_mapping(raw) + config.validate() + return config diff --git a/antelab/core/environment.py b/antelab/core/environment.py new file mode 100644 index 0000000..0cbba6f --- /dev/null +++ b/antelab/core/environment.py @@ -0,0 +1,78 @@ +"""Food entities and deterministic world processes.""" + +from __future__ import annotations + +from dataclasses import dataclass + +from antelab.core.rng import Rng + + +def _require_integer(value: int, label: str, minimum: int) -> None: + if isinstance(value, bool) or not isinstance(value, int) or value < minimum: + if minimum == 1: + raise ValueError(f"{label} must be a positive integer") + raise ValueError(f"{label} must be an integer >= {minimum}") + + +@dataclass(frozen=True) +class Food: + id: int + x: int + y: int + energy: int + + def __post_init__(self) -> None: + for label, value in ( + ("id", self.id), + ("x", self.x), + ("y", self.y), + ("energy", self.energy), + ): + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{label} must be an integer") + + def to_dict(self) -> dict[str, int]: + return {"id": self.id, "x": self.x, "y": self.y, "energy": self.energy} + + +@dataclass +class Environment: + width: int + height: int + foods: dict[int, Food] + next_food_id: int + + def __post_init__(self) -> None: + _require_integer(self.width, "width", 1) + _require_integer(self.height, "height", 1) + _require_integer(self.next_food_id, "next_food_id", 1) + + @classmethod + def empty(cls, width: int, height: int) -> Environment: + _require_integer(width, "width", 1) + _require_integer(height, "height", 1) + return cls(width=width, height=height, foods={}, next_food_id=1) + + def spawn_food(self, rng: Rng, count: int, energy: int) -> tuple[Food, ...]: + _require_integer(count, "count", 0) + _require_integer(energy, "energy", 1) + created: list[Food] = [] + for _ in range(count): + food = Food( + id=self.next_food_id, + x=rng.randbelow(self.width), + y=rng.randbelow(self.height), + energy=energy, + ) + self.foods[food.id] = food + self.next_food_id += 1 + created.append(food) + return tuple(created) + + def to_dict(self) -> dict[str, object]: + return { + "width": self.width, + "height": self.height, + "foods": [self.foods[food_id].to_dict() for food_id in sorted(self.foods)], + "next_food_id": self.next_food_id, + } diff --git a/antelab/core/evolution.py b/antelab/core/evolution.py new file mode 100644 index 0000000..aaad9f7 --- /dev/null +++ b/antelab/core/evolution.py @@ -0,0 +1,228 @@ +"""Pure inheritance, reproduction, and death state transitions.""" + +from dataclasses import dataclass, replace +from math import isqrt + +from antelab.core.fixed import ( + DIRECTION_COUNT, + DIRECTION_VECTORS, + UNIT, + toroidal_distance_sq, +) +from antelab.core.genome import TRAIT_LIMITS, mutate_genome +from antelab.core.organism import LineageEvent, Organism +from antelab.core.rng import Rng + +_MAX_SIGNED_DELTA = ((1 << 64) - 1) // 2 + + +@dataclass(frozen=True) +class ReproductionOutcome: + parent: Organism + child: Organism + lineage: LineageEvent + energy_spent: int + + +def _require_integer( + value: object, + label: str, + minimum: int | None = None, + maximum: int | None = None, +) -> None: + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{label} must be an integer") + if minimum is not None and value < minimum: + raise ValueError(f"{label} must be an integer >= {minimum}") + if maximum is not None and value > maximum: + raise ValueError(f"{label} must be an integer <= {maximum}") + + +def _require_organism(organism: Organism) -> None: + if not isinstance(organism, Organism): + raise ValueError("organism must be an Organism") + + +def _validate_runtime_state(organism: Organism) -> None: + _require_organism(organism) + for label, value, minimum in ( + ("organism.id", organism.id, 0), + ("organism.generation", organism.generation, 0), + ("organism.x", organism.x, 0), + ("organism.y", organism.y, 0), + ("organism.heading", organism.heading, 0), + ("organism.energy", organism.energy, 0), + ("organism.age", organism.age, 0), + ("organism.offspring_count", organism.offspring_count, 0), + ): + _require_integer(value, label, minimum) + _require_integer( + organism.last_reproduction_tick, + "organism.last_reproduction_tick", + ) + if not isinstance(organism.alive, bool): + raise ValueError("organism.alive must be a boolean") + organism.genome.validate() + + +def can_reproduce(parent: Organism, tick: int, cooldown: int) -> bool: + """Return whether all reproduction eligibility conditions are met.""" + _validate_runtime_state(parent) + _require_integer(tick, "tick", 0) + _require_integer(cooldown, "cooldown", 0) + + genome = parent.genome + required_energy = genome.reproduction_cost + genome.reproduction_allocation + return ( + parent.alive + and parent.energy >= genome.reproduction_threshold + and parent.energy >= required_energy + and tick - parent.last_reproduction_tick >= cooldown + ) + + +def reproduce( + parent: Organism, + child_id: int, + tick: int, + rng: Rng, + mutation_probability: int, + mutation_step: int, + width: int, + height: int, +) -> ReproductionOutcome: + """Create a mutated child while conserving all non-dissipated energy.""" + _validate_reproduction_inputs( + parent, + child_id, + tick, + rng, + mutation_probability, + mutation_step, + width, + height, + ) + + child_genome = mutate_genome(parent.genome, rng, mutation_probability, mutation_step) + child_x, child_y, child_heading = _child_placement( + parent, + child_genome.body_radius, + rng, + width, + height, + ) + allocation = parent.genome.reproduction_allocation + cost = parent.genome.reproduction_cost + updated_parent = replace( + parent, + energy=parent.energy - allocation - cost, + last_reproduction_tick=tick, + offspring_count=parent.offspring_count + 1, + ) + child = Organism( + id=child_id, + parent_id=parent.id, + generation=parent.generation + 1, + genome=child_genome, + x=child_x, + y=child_y, + heading=child_heading, + energy=allocation, + ) + lineage = LineageEvent(parent.id, child_id, tick, child.generation) + return ReproductionOutcome(updated_parent, child, lineage, cost) + + +def _validate_reproduction_inputs( + parent: Organism, + child_id: int, + tick: int, + rng: Rng, + mutation_probability: int, + mutation_step: int, + width: int, + height: int, +) -> None: + _validate_runtime_state(parent) + _require_integer(child_id, "child_id", 0) + _require_integer(tick, "tick", 0) + _require_integer(mutation_probability, "mutation_probability", 0, UNIT) + _require_integer(mutation_step, "mutation_step", 0, _MAX_SIGNED_DELTA) + _require_integer(width, "width", 1) + _require_integer(height, "height", 1) + if not isinstance(rng, Rng): + raise ValueError("rng must be an Rng") + if child_id == parent.id: + raise ValueError("child_id must differ from parent.id") + if parent.x >= width or parent.y >= height: + raise ValueError("parent position must be within world bounds") + if not parent.alive: + raise ValueError("parent must be alive to reproduce") + + required_energy = ( + parent.genome.reproduction_cost + parent.genome.reproduction_allocation + ) + if parent.energy < required_energy: + raise ValueError("reproduction cost and allocation would leave parent negative") + + max_child_radius = parent.genome.body_radius + if mutation_probability > 0: + max_radius = TRAIT_LIMITS["body_radius"][1] + max_child_radius = min(max_radius, max_child_radius + mutation_step) + required_separation = parent.genome.body_radius + max_child_radius + maximum_distance = isqrt((width // 2) ** 2 + (height // 2) ** 2) + if maximum_distance < required_separation: + raise ValueError("world bounds cannot place a non-overlapping child") + + +def _scaled_component(component: int, distance: int) -> int: + magnitude = (abs(component) * distance) // UNIT + return magnitude if component >= 0 else -magnitude + + +def _ring_offset(heading: int, separation: int) -> tuple[int, int]: + vector_x, vector_y = DIRECTION_VECTORS[heading] + distance = separation + while True: + dx = _scaled_component(vector_x, distance) + dy = _scaled_component(vector_y, distance) + if dx * dx + dy * dy >= separation * separation: + return dx, dy + distance += 1 + + +def _child_placement( + parent: Organism, + child_radius: int, + rng: Rng, + width: int, + height: int, +) -> tuple[int, int, int]: + separation = parent.genome.body_radius + child_radius + initial_heading = rng.randbelow(DIRECTION_COUNT) + for offset in range(DIRECTION_COUNT): + heading = (initial_heading + offset) % DIRECTION_COUNT + dx, dy = _ring_offset(heading, separation) + x = (parent.x + dx) % width + y = (parent.y + dy) % height + if toroidal_distance_sq(parent.x, parent.y, x, y, width, height) >= ( + separation * separation + ): + return x, y, heading + + x = (parent.x + width // 2) % width + y = (parent.y + height // 2) % height + return x, y, initial_heading + + +def resolve_death(organism: Organism, max_age: int) -> Organism: + """Apply stable death transitions, prioritizing energy depletion.""" + _validate_runtime_state(organism) + _require_integer(max_age, "max_age", 1) + if not organism.alive: + return organism + if organism.energy == 0: + return replace(organism, alive=False, death_cause="energy_depleted") + if organism.age >= max_age: + return replace(organism, alive=False, death_cause="maximum_age") + return organism diff --git a/antelab/core/fixed.py b/antelab/core/fixed.py new file mode 100644 index 0000000..7ffaa25 --- /dev/null +++ b/antelab/core/fixed.py @@ -0,0 +1,88 @@ +"""Deterministic integer geometry for the authoritative simulation.""" + +UNIT = 1024 +DIRECTION_COUNT = 16 +DIRECTION_VECTORS: tuple[tuple[int, int], ...] = ( + (1024, 0), + (946, 392), + (724, 724), + (392, 946), + (0, 1024), + (-392, 946), + (-724, 724), + (-946, 392), + (-1024, 0), + (-946, -392), + (-724, -724), + (-392, -946), + (0, -1024), + (392, -946), + (724, -724), + (946, -392), +) + + +def clamp(value: int, lower: int, upper: int) -> int: + return max(lower, min(upper, value)) + + +def normalize_ratio(numerator: int, denominator: int) -> int: + if denominator <= 0: + raise ValueError("denominator must be positive") + return clamp((numerator * UNIT) // denominator, -UNIT, UNIT) + + +def toroidal_delta(start: int, end: int, size: int) -> int: + if size <= 0: + raise ValueError("world size must be positive") + delta = (end - start) % size + if delta > size // 2: + delta -= size + return delta + + +def toroidal_distance_sq( + ax: int, + ay: int, + bx: int, + by: int, + width: int, + height: int, +) -> int: + dx = toroidal_delta(ax, bx, width) + dy = toroidal_delta(ay, by, height) + return dx * dx + dy * dy + + +def direction_for_delta(dx: int, dy: int) -> int: + if dx == 0 and dy == 0: + return 0 + return max( + range(DIRECTION_COUNT), + key=lambda index: ( + dx * DIRECTION_VECTORS[index][0] + dy * DIRECTION_VECTORS[index][1], + -index, + ), + ) + + +def heading_delta(start: int, end: int) -> int: + delta = (end - start) % DIRECTION_COUNT + if delta > DIRECTION_COUNT // 2: + delta -= DIRECTION_COUNT + return delta + + +def move_point( + x: int, + y: int, + heading: int, + distance: int, + width: int, + height: int, +) -> tuple[int, int]: + dx, dy = DIRECTION_VECTORS[heading % DIRECTION_COUNT] + return ( + (x + (dx * distance) // UNIT) % width, + (y + (dy * distance) // UNIT) % height, + ) diff --git a/antelab/core/genome.py b/antelab/core/genome.py new file mode 100644 index 0000000..2e35897 --- /dev/null +++ b/antelab/core/genome.py @@ -0,0 +1,226 @@ +"""Canonical inherited genomes and deterministic fixed-point mutation.""" + +import json +from dataclasses import dataclass +from functools import lru_cache + +from antelab.core.fixed import UNIT, clamp +from antelab.core.rng import Rng + +INPUT_COUNT = 10 +OUTPUT_COUNT = 5 +CONTROLLER_WEIGHT_COUNT = INPUT_COUNT * OUTPUT_COUNT +CONTROLLER_BIAS_COUNT = OUTPUT_COUNT +CONTROLLER_GENE_COUNT = CONTROLLER_WEIGHT_COUNT + CONTROLLER_BIAS_COUNT + +TRAIT_LIMITS: dict[str, tuple[int, int]] = { + "body_radius": (UNIT // 2, 4 * UNIT), + "max_thrust": (UNIT // 8, 4 * UNIT), + "turn_steps": (1, 4), + "sensor_cost": (0, UNIT), + "basal_cost": (1, UNIT), + "move_cost": (0, UNIT), + "sensor_range": (4 * UNIT, 64 * UNIT), + "field_of_view": (1, 8), + "reproduction_threshold": (4 * UNIT, 64 * UNIT), + "reproduction_allocation": (UNIT, 32 * UNIT), + "reproduction_cost": (0, 4 * UNIT), + "signal_strength": (0, UNIT), + "signal_cost": (0, UNIT), + "color_r": (0, 255), + "color_g": (0, 255), + "color_b": (0, 255), +} + +_CONTROLLER_LIMITS = (-4 * UNIT, 4 * UNIT) +_GENOME_KEYS = {*TRAIT_LIMITS, "controller_weights", "controller_biases"} + +OWN_ENERGY_INPUT = 0 +FOOD_BEARING_INPUT = 3 +TURN_OUTPUT = 0 +THRUST_OUTPUT = 1 +EAT_OUTPUT = 2 +SIGNAL_OUTPUT = 3 +REPRODUCE_OUTPUT = 4 + + +@dataclass(frozen=True) +class Genome: + body_radius: int + max_thrust: int + turn_steps: int + sensor_cost: int + basal_cost: int + move_cost: int + sensor_range: int + field_of_view: int + reproduction_threshold: int + reproduction_allocation: int + reproduction_cost: int + signal_strength: int + signal_cost: int + color_r: int + color_g: int + color_b: int + controller_weights: tuple[int, ...] + controller_biases: tuple[int, ...] + + def validate(self) -> None: + try: + _validate_genome_cached(self) + except TypeError: + # Directly constructed malformed genomes can contain unhashable + # values. Preserve validate()'s ValueError contract in that case. + _validate_genome_uncached(self) + + def to_dict(self) -> dict[str, object]: + self.validate() + return { + "body_radius": self.body_radius, + "max_thrust": self.max_thrust, + "turn_steps": self.turn_steps, + "sensor_cost": self.sensor_cost, + "basal_cost": self.basal_cost, + "move_cost": self.move_cost, + "sensor_range": self.sensor_range, + "field_of_view": self.field_of_view, + "reproduction_threshold": self.reproduction_threshold, + "reproduction_allocation": self.reproduction_allocation, + "reproduction_cost": self.reproduction_cost, + "signal_strength": self.signal_strength, + "signal_cost": self.signal_cost, + "color_r": self.color_r, + "color_g": self.color_g, + "color_b": self.color_b, + "controller_weights": list(self.controller_weights), + "controller_biases": list(self.controller_biases), + } + + @classmethod + def from_dict(cls, raw: dict[str, object]) -> "Genome": + if not isinstance(raw, dict) or not all(isinstance(key, str) for key in raw): + raise ValueError("genome must be a string-keyed mapping") + actual_keys = set(raw) + if actual_keys != _GENOME_KEYS: + raise ValueError( + f"genome keys differ: missing={sorted(_GENOME_KEYS - actual_keys)}, " + f"extra={sorted(actual_keys - _GENOME_KEYS)}" + ) + + scalars = {field: _dict_integer(raw, field) for field in TRAIT_LIMITS} + genome = cls( + **scalars, + controller_weights=_dict_controller(raw, "controller_weights"), + controller_biases=_dict_controller(raw, "controller_biases"), + ) + genome.validate() + return genome + + def canonical_key(self) -> str: + return json.dumps( + self.to_dict(), + sort_keys=True, + separators=(",", ":"), + allow_nan=False, + ) + + +def _validate_genome_uncached(genome: Genome) -> None: + for field, (lower, upper) in TRAIT_LIMITS.items(): + value = getattr(genome, field) + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{field} must be an integer") + if not lower <= value <= upper: + raise ValueError(f"{field} must be within [{lower}, {upper}]") + _validate_controller(genome.controller_weights, "controller_weights", CONTROLLER_WEIGHT_COUNT) + _validate_controller(genome.controller_biases, "controller_biases", CONTROLLER_BIAS_COUNT) + + +@lru_cache(maxsize=4096) +def _validate_genome_cached(genome: Genome) -> None: + _validate_genome_uncached(genome) + + +def _validate_controller(genes: tuple[int, ...], field: str, expected_size: int) -> None: + if not isinstance(genes, tuple) or len(genes) != expected_size: + raise ValueError(f"{field} must be a tuple of exactly {expected_size} integers") + lower, upper = _CONTROLLER_LIMITS + if any(isinstance(gene, bool) or not isinstance(gene, int) for gene in genes): + raise ValueError(f"{field} must contain only integers") + if any(not lower <= gene <= upper for gene in genes): + raise ValueError(f"{field} values must be within [{lower}, {upper}]") + + +def _dict_integer(raw: dict[str, object], field: str) -> int: + value = raw[field] + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{field} must be an integer") + return value + + +def _dict_controller(raw: dict[str, object], field: str) -> tuple[int, ...]: + value = raw[field] + if not isinstance(value, list): + raise ValueError(f"{field} must be a list") + if any(isinstance(gene, bool) or not isinstance(gene, int) for gene in value): + raise ValueError(f"{field} must contain only integers") + return tuple(value) + + +def primitive_ancestor() -> Genome: + weights = [0] * CONTROLLER_WEIGHT_COUNT + biases = [0] * CONTROLLER_BIAS_COUNT + weights[TURN_OUTPUT * INPUT_COUNT + FOOD_BEARING_INPUT] = UNIT + weights[REPRODUCE_OUTPUT * INPUT_COUNT + OWN_ENERGY_INPUT] = UNIT + biases[THRUST_OUTPUT] = UNIT // 2 + biases[EAT_OUTPUT] = UNIT + biases[SIGNAL_OUTPUT] = 0 + biases[REPRODUCE_OUTPUT] = -(3 * UNIT) // 4 + genome = Genome( + body_radius=UNIT, + max_thrust=UNIT, + turn_steps=1, + sensor_cost=2, + basal_cost=8, + move_cost=16, + sensor_range=24 * UNIT, + field_of_view=8, + reproduction_threshold=18 * UNIT, + reproduction_allocation=6 * UNIT, + reproduction_cost=128, + signal_strength=UNIT // 2, + signal_cost=4, + color_r=80, + color_g=210, + color_b=140, + controller_weights=tuple(weights), + controller_biases=tuple(biases), + ) + genome.validate() + return genome + + +def mutate_genome(parent: Genome, rng: Rng, probability: int, step: int) -> Genome: + parent.validate() + values = parent.to_dict() + for field, (lower, upper) in TRAIT_LIMITS.items(): + value = getattr(parent, field) + if rng.chance(probability, UNIT): + value = clamp(value + rng.signed_delta(step), lower, upper) + values[field] = value + + controller_lower, controller_upper = _CONTROLLER_LIMITS + weights = [] + for value in parent.controller_weights: + if rng.chance(probability, UNIT): + value = clamp(value + rng.signed_delta(step), controller_lower, controller_upper) + weights.append(value) + values["controller_weights"] = weights + + biases = [] + for value in parent.controller_biases: + if rng.chance(probability, UNIT): + value = clamp(value + rng.signed_delta(step), controller_lower, controller_upper) + biases.append(value) + values["controller_biases"] = biases + return Genome.from_dict(values) diff --git a/antelab/core/organism.py b/antelab/core/organism.py new file mode 100644 index 0000000..00a828f --- /dev/null +++ b/antelab/core/organism.py @@ -0,0 +1,87 @@ +"""Organism identity, inherited traits, and mutable runtime state.""" + +from dataclasses import dataclass + +from antelab.core.genome import Genome + + +@dataclass +class Organism: + id: int + parent_id: int | None + generation: int + genome: Genome + x: int + y: int + heading: int + energy: int + age: int = 0 + alive: bool = True + last_reproduction_tick: int = -1_000_000 + signal: int = 0 + food_eaten: int = 0 + offspring_count: int = 0 + death_cause: str | None = None + + def __post_init__(self) -> None: + numeric = ( + ("id", self.id), + ("generation", self.generation), + ("x", self.x), + ("y", self.y), + ("heading", self.heading), + ("energy", self.energy), + ("age", self.age), + ("last_reproduction_tick", self.last_reproduction_tick), + ("signal", self.signal), + ("food_eaten", self.food_eaten), + ("offspring_count", self.offspring_count), + ) + for label, value in numeric: + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{label} must be an integer") + if self.parent_id is not None and ( + isinstance(self.parent_id, bool) or not isinstance(self.parent_id, int) + ): + raise ValueError("parent_id must be an integer or None") + if not isinstance(self.alive, bool): + raise ValueError("alive must be a boolean") + if self.death_cause is not None and not isinstance(self.death_cause, str): + raise ValueError("death_cause must be a string or None") + self.genome.validate() + + def to_dict(self) -> dict[str, object]: + return { + "id": self.id, + "parent_id": self.parent_id, + "generation": self.generation, + "genome": self.genome.to_dict(), + "x": self.x, + "y": self.y, + "heading": self.heading, + "energy": self.energy, + "age": self.age, + "alive": self.alive, + "last_reproduction_tick": self.last_reproduction_tick, + "signal": self.signal, + "food_eaten": self.food_eaten, + "offspring_count": self.offspring_count, + "death_cause": self.death_cause, + } + +@dataclass(frozen=True) +class LineageEvent: + parent_id: int + child_id: int + tick: int + generation: int + + def __post_init__(self) -> None: + for label, value in ( + ("parent_id", self.parent_id), + ("child_id", self.child_id), + ("tick", self.tick), + ("generation", self.generation), + ): + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{label} must be an integer") diff --git a/antelab/core/physics.py b/antelab/core/physics.py new file mode 100644 index 0000000..cf71b45 --- /dev/null +++ b/antelab/core/physics.py @@ -0,0 +1,201 @@ +"""Pure fixed-point movement, eating, and action-energy transformations.""" + +from dataclasses import dataclass, replace + +from antelab.core.environment import Food +from antelab.core.fixed import DIRECTION_COUNT, UNIT, move_point, toroidal_distance_sq +from antelab.core.organism import Organism + + +def _require_integer(value: object, label: str, minimum: int | None = None) -> None: + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{label} must be an integer") + if minimum is not None and value < minimum: + if minimum == 1: + raise ValueError(f"{label} must be a positive integer") + raise ValueError(f"{label} must be an integer >= {minimum}") + + +def _require_organism(organism: Organism) -> None: + if not isinstance(organism, Organism): + raise ValueError("organism must be an Organism") + + +def _require_food(food: Food) -> None: + if not isinstance(food, Food): + raise ValueError("food must be Food") + + +def _validate_action_costs(basal: int, sensing: int, movement: int, signal: int) -> None: + for label, value in ( + ("basal", basal), + ("sensing", sensing), + ("movement", movement), + ("signal", signal), + ): + _require_integer(value, label, 0) + + +@dataclass(frozen=True) +class MovementOutcome: + organism: Organism + movement_energy_requested: int + + +@dataclass(frozen=True, init=False) +class ActionCosts: + basal: int + sensing: int + movement: int + signal: int + + def __init__(self, basal: int, sensing: int, movement: int, signal: int) -> None: + _validate_action_costs(basal, sensing, movement, signal) + object.__setattr__(self, "basal", basal) + object.__setattr__(self, "sensing", sensing) + object.__setattr__(self, "movement", movement) + object.__setattr__(self, "signal", signal) + + def __init_subclass__(cls, **kwargs: object) -> None: + del kwargs + raise TypeError("ActionCosts does not support subclasses") + + +@dataclass(frozen=True) +class ActionChargeOutcome: + organism: Organism + basal_energy_spent: int + sensing_energy_spent: int + movement_energy_spent: int + signal_energy_spent: int + + +@dataclass(frozen=True) +class ConsumptionOutcome: + organism: Organism + absorbed_energy: int + overflow_energy: int + + +def apply_movement( + organism: Organism, + turn: int, + thrust: int, + width: int, + height: int, +) -> MovementOutcome: + """Resolve turning and toroidal movement without charging energy.""" + _require_organism(organism) + _require_integer(turn, "turn") + _require_integer(thrust, "thrust") + _require_integer(width, "width", 1) + _require_integer(height, "height", 1) + for label, value in ( + ("organism.x", organism.x), + ("organism.y", organism.y), + ("organism.heading", organism.heading), + ("organism.age", organism.age), + ): + _require_integer(value, label) + organism.genome.validate() + + turn_delta = 0 + if turn > UNIT // 4: + turn_delta = organism.genome.turn_steps + elif turn < -(UNIT // 4): + turn_delta = -organism.genome.turn_steps + heading = (organism.heading + turn_delta) % DIRECTION_COUNT + effective_thrust = max(0, thrust) + distance = (organism.genome.max_thrust * effective_thrust) // UNIT + x, y = move_point(organism.x, organism.y, heading, distance, width, height) + move_charge = (organism.genome.move_cost * effective_thrust) // UNIT + moved = replace( + organism, + x=x, + y=y, + heading=heading, + age=organism.age + 1, + ) + return MovementOutcome(moved, move_charge) + + +def charge_action_energy(organism: Organism, costs: ActionCosts) -> ActionChargeOutcome: + """Debit action costs in the versioned basal-to-signal order.""" + _require_organism(organism) + if not isinstance(costs, ActionCosts): + raise ValueError("costs must be ActionCosts") + _require_integer(organism.energy, "organism.energy", 0) + _validate_action_costs(costs.basal, costs.sensing, costs.movement, costs.signal) + + remaining = organism.energy + actual: list[int] = [] + for requested in (costs.basal, costs.sensing, costs.movement, costs.signal): + spent = min(remaining, requested) + actual.append(spent) + remaining -= spent + + return ActionChargeOutcome( + organism=replace(organism, energy=remaining), + basal_energy_spent=actual[0], + sensing_energy_spent=actual[1], + movement_energy_spent=actual[2], + signal_energy_spent=actual[3], + ) + + +def can_eat( + organism: Organism, + food: Food, + width: int, + height: int, +) -> bool: + """Return whether food is within inclusive toroidal eating reach.""" + _require_organism(organism) + _require_food(food) + _require_integer(width, "width", 1) + _require_integer(height, "height", 1) + for label, value in ( + ("organism.x", organism.x), + ("organism.y", organism.y), + ("food.x", food.x), + ("food.y", food.y), + ): + _require_integer(value, label) + organism.genome.validate() + + reach = organism.genome.body_radius + UNIT + distance_sq = toroidal_distance_sq( + organism.x, + organism.y, + food.x, + food.y, + width, + height, + ) + return distance_sq <= reach * reach + + +def consume_food( + organism: Organism, + food: Food, + max_energy: int, +) -> ConsumptionOutcome: + """Transfer food energy and report any capacity overflow.""" + _require_organism(organism) + _require_food(food) + _require_integer(max_energy, "max_energy", 1) + _require_integer(organism.energy, "organism.energy", 0) + _require_integer(organism.food_eaten, "organism.food_eaten", 0) + _require_integer(food.energy, "food.energy", 0) + if organism.energy > max_energy: + raise ValueError("organism.energy must not exceed max_energy") + + capacity = max_energy - organism.energy + absorbed = min(food.energy, capacity) + overflow = food.energy - absorbed + fed = replace( + organism, + energy=organism.energy + absorbed, + food_eaten=organism.food_eaten + 1, + ) + return ConsumptionOutcome(fed, absorbed, overflow) diff --git a/antelab/core/rng.py b/antelab/core/rng.py new file mode 100644 index 0000000..402163c --- /dev/null +++ b/antelab/core/rng.py @@ -0,0 +1,45 @@ +"""Versioned integer-only random streams.""" + +from hashlib import blake2b + +_MASK_64 = (1 << 64) - 1 + + +class Rng: + def __init__(self, seed: int) -> None: + self._state = seed & _MASK_64 + + @property + def state(self) -> int: + return self._state + + def next_u64(self) -> int: + self._state = (self._state + 0x9E3779B97F4A7C15) & _MASK_64 + value = self._state + value = ((value ^ (value >> 30)) * 0xBF58476D1CE4E5B9) & _MASK_64 + value = ((value ^ (value >> 27)) * 0x94D049BB133111EB) & _MASK_64 + return (value ^ (value >> 31)) & _MASK_64 + + def randbelow(self, upper: int) -> int: + if not 0 < upper <= 1 << 64: + raise ValueError("upper must be within [1, 2**64]") + limit = (1 << 64) - ((1 << 64) % upper) + while True: + value = self.next_u64() + if value < limit: + return value % upper + + def chance(self, numerator: int, denominator: int) -> bool: + if denominator <= 0 or not 0 <= numerator <= denominator: + raise ValueError("chance must satisfy 0 <= numerator <= denominator") + return self.randbelow(denominator) < numerator + + def signed_delta(self, magnitude: int) -> int: + if magnitude < 0: + raise ValueError("magnitude must be non-negative") + return self.randbelow(2 * magnitude + 1) - magnitude + + +def stable_rank(*parts: int) -> int: + payload = b"|".join(str(part).encode("ascii") for part in parts) + return int.from_bytes(blake2b(payload, digest_size=8).digest(), "big") diff --git a/antelab/core/simulation.py b/antelab/core/simulation.py new file mode 100644 index 0000000..5198a7c --- /dev/null +++ b/antelab/core/simulation.py @@ -0,0 +1,836 @@ +"""Authoritative deterministic simulation construction and sensor snapshots.""" + +from __future__ import annotations + +import json +from dataclasses import asdict, dataclass, field, replace +from hashlib import sha256 +from math import isqrt + +from antelab.core.brain import EffectorFrame, SensorFrame, evaluate +from antelab.core.config import SimulationConfig +from antelab.core.environment import Environment +from antelab.core.evolution import can_reproduce, reproduce, resolve_death +from antelab.core.fixed import ( + DIRECTION_COUNT, + UNIT, + direction_for_delta, + heading_delta, + normalize_ratio, + toroidal_delta, + toroidal_distance_sq, +) +from antelab.core.genome import Genome, mutate_genome, primitive_ancestor +from antelab.core.organism import LineageEvent, Organism +from antelab.core.physics import ( + ActionCosts, + apply_movement, + charge_action_energy, + consume_food, +) +from antelab.core.rng import Rng, stable_rank +from antelab.core.spatial import OrganismSnapshot, SpatialSnapshot + +_ENERGY_FIELDS = ( + "organism_start", + "food_start", + "food_created", + "basal_spent", + "sensing_spent", + "movement_spent", + "signal_spent", + "food_absorbed", + "food_overflow", + "reproduction_transferred", + "reproduction_spent", + "organism_end", + "food_end", +) + + +@dataclass(frozen=True, init=False) +class EnergyLedger: + organism_start: int + food_start: int + food_created: int + basal_spent: int + sensing_spent: int + movement_spent: int + signal_spent: int + food_absorbed: int + food_overflow: int + reproduction_transferred: int + reproduction_spent: int + organism_end: int + food_end: int + + def __init__( + self, + organism_start: int, + food_start: int, + food_created: int, + basal_spent: int, + sensing_spent: int, + movement_spent: int, + signal_spent: int, + food_absorbed: int, + food_overflow: int, + reproduction_transferred: int, + reproduction_spent: int, + organism_end: int, + food_end: int, + ) -> None: + values = ( + organism_start, + food_start, + food_created, + basal_spent, + sensing_spent, + movement_spent, + signal_spent, + food_absorbed, + food_overflow, + reproduction_transferred, + reproduction_spent, + organism_end, + food_end, + ) + if any(type(value) is not int for value in values): + raise RuntimeError("energy ledger values must be exact integers") + for name, value in zip(_ENERGY_FIELDS, values, strict=True): + object.__setattr__(self, name, value) + self.validate() + + def __init_subclass__(cls, **kwargs: object) -> None: + del kwargs + raise TypeError("EnergyLedger does not support subclasses") + + def validate(self) -> None: + values = tuple(getattr(self, name) for name in _ENERGY_FIELDS) + if any(type(value) is not int for value in values): + raise RuntimeError("energy ledger values must be exact integers") + if any(value < 0 for value in values): + raise RuntimeError("energy ledger contains a negative value") + if self.food_start + self.food_created - self.food_end != ( + self.food_absorbed + self.food_overflow + ): + raise RuntimeError("food transfer does not reconcile") + available = self.organism_start + self.food_start + self.food_created + accounted = ( + self.organism_end + + self.food_end + + self.basal_spent + + self.sensing_spent + + self.movement_spent + + self.signal_spent + + self.reproduction_spent + + self.food_overflow + ) + if available != accounted: + raise RuntimeError("energy ledger does not reconcile") + + +@dataclass(frozen=True) +class TickResult: + tick: int + births: int + deaths: int + food_consumed: int + food_spawned: int + energy: EnergyLedger + status: str + checksum: str + + +@dataclass +class Simulation: + config: SimulationConfig + rng: Rng + environment: Environment + organisms: dict[int, Organism] + ancestor_genome: Genome + tick: int = 0 + next_organism_id: int = 1 + lineage: list[LineageEvent] = field(default_factory=list) + events: list[dict[str, int | str]] = field(default_factory=list) + status: str = "running" + + @classmethod + def create(cls, config: SimulationConfig) -> Simulation: + config.validate() + rng = Rng(config.seed) + environment = Environment.empty(config.world.width, config.world.height) + environment.spawn_food(rng, config.world.initial_food, config.world.food_energy) + ancestor = primitive_ancestor() + organisms: dict[int, Organism] = {} + for organism_id in range(1, config.life.initial_population + 1): + genome = mutate_genome( + ancestor, + rng, + config.mutation.probability, + config.mutation.step, + ) + organisms[organism_id] = Organism( + id=organism_id, + parent_id=None, + generation=0, + genome=genome, + x=rng.randbelow(config.world.width), + y=rng.randbelow(config.world.height), + heading=rng.randbelow(DIRECTION_COUNT), + energy=config.life.initial_energy, + ) + return cls( + config=config, + rng=rng, + environment=environment, + organisms=organisms, + ancestor_genome=ancestor, + next_organism_id=config.life.initial_population + 1, + ) + + def step(self) -> TickResult: + if self.status != "running": + raise RuntimeError(f"cannot step simulation with status {self.status}") + working = self._transaction_copy() + result = working._step_in_place() + self.rng = working.rng + self.environment = working.environment + self.organisms = working.organisms + self.tick = working.tick + self.next_organism_id = working.next_organism_id + self.lineage = working.lineage + self.events = working.events + self.status = working.status + return result + + def _transaction_copy(self) -> Simulation: + return Simulation( + config=self.config, + rng=Rng(self.rng.state), + environment=Environment( + width=self.environment.width, + height=self.environment.height, + foods=dict(self.environment.foods), + next_food_id=self.environment.next_food_id, + ), + organisms={ + organism_id: replace(organism) + for organism_id, organism in self.organisms.items() + }, + ancestor_genome=self.ancestor_genome, + tick=self.tick, + next_organism_id=self.next_organism_id, + lineage=list(self.lineage), + events=[dict(event) for event in self.events], + status=self.status, + ) + + def _step_in_place(self) -> TickResult: + organism_start = sum(item.energy for item in self.organisms.values()) + food_start = sum(item.energy for item in self.environment.foods.values()) + start_organisms = tuple( + self.organisms[item_id] + for item_id in sorted(self.organisms) + if self.organisms[item_id].alive + ) + snapshot = SpatialSnapshot.build( + organisms=start_organisms, + foods=tuple(self.environment.foods.values()), + width=self.environment.width, + height=self.environment.height, + ) + + decisions: dict[int, EffectorFrame] = {} + for observer in sorted(snapshot.organisms, key=lambda item: item.id): + decisions[observer.id] = evaluate( + observer.genome, + self._sensor_frame(observer, snapshot), + ) + + updated = { + organism_id: replace(organism) + for organism_id, organism in self.organisms.items() + } + movement_requested: dict[int, int] = {} + for organism_id in sorted(decisions): + effector = decisions[organism_id] + movement = apply_movement( + updated[organism_id], + effector.turn, + effector.thrust, + self.environment.width, + self.environment.height, + ) + updated[organism_id] = movement.organism + movement_requested[organism_id] = movement.movement_energy_requested + + eat_attempts: dict[int, list[int]] = {} + for organism_id in sorted(decisions): + if not decisions[organism_id].eat: + continue + organism = updated[organism_id] + reachable = snapshot.foods_within( + organism.x, + organism.y, + organism.genome.body_radius + UNIT, + ) + target = min( + reachable, + key=lambda food: ( + toroidal_distance_sq( + organism.x, + organism.y, + food.x, + food.y, + self.environment.width, + self.environment.height, + ), + food.id, + ), + default=None, + ) + if target is not None: + eat_attempts.setdefault(target.id, []).append(organism_id) + + food_absorbed = 0 + food_overflow = 0 + consumed_food_ids: set[int] = set() + for food_id in sorted(eat_attempts): + food = self.environment.foods[food_id] + contenders = eat_attempts[food_id] + ranked = [ + ( + toroidal_distance_sq( + updated[organism_id].x, + updated[organism_id].y, + food.x, + food.y, + self.environment.width, + self.environment.height, + ), + stable_rank(self.config.seed, self.tick, food_id, organism_id), + organism_id, + ) + for organism_id in contenders + ] + best_key = min((distance, rank) for distance, rank, _ in ranked) + winners = [ + organism_id + for distance, rank, organism_id in ranked + if (distance, rank) == best_key + ] + if len(winners) != 1: + raise RuntimeError("contested food rank collision") + winner_id = winners[0] + consumption = consume_food( + updated[winner_id], + food, + self.config.life.max_energy, + ) + updated[winner_id] = consumption.organism + food_absorbed += consumption.absorbed_energy + food_overflow += consumption.overflow_energy + consumed_food_ids.add(food_id) + for food_id in consumed_food_ids: + del self.environment.foods[food_id] + + basal_spent = 0 + sensing_spent = 0 + movement_spent = 0 + signal_spent = 0 + for organism_id in sorted(decisions): + organism = updated[organism_id] + effector = decisions[organism_id] + signal = (organism.genome.signal_strength * effector.signal) // UNIT + organism = replace(organism, signal=signal) + charged = charge_action_energy( + organism, + ActionCosts( + basal=organism.genome.basal_cost, + sensing=organism.genome.sensor_cost, + movement=movement_requested[organism_id], + signal=(organism.genome.signal_cost * effector.signal) // UNIT, + ), + ) + updated[organism_id] = charged.organism + basal_spent += charged.basal_energy_spent + sensing_spent += charged.sensing_energy_spent + movement_spent += charged.movement_energy_spent + signal_spent += charged.signal_energy_spent + + eligible = [ + organism_id + for organism_id in decisions + if decisions[organism_id].reproduce + and can_reproduce( + updated[organism_id], + self.tick, + self.config.life.reproduction_cooldown, + ) + ] + eligible.sort( + key=lambda organism_id: ( + stable_rank(self.config.seed, self.tick, organism_id), + organism_id, + ) + ) + births = 0 + reproduction_transferred = 0 + reproduction_spent = 0 + capacity_blocked = False + tick_lineage: list[LineageEvent] = [] + tick_events: list[dict[str, int | str]] = [] + for parent_id in eligible: + if len(updated) >= self.config.world.max_entities: + capacity_blocked = True + break + outcome = reproduce( + updated[parent_id], + self.next_organism_id, + self.tick, + self.rng, + self.config.mutation.probability, + self.config.mutation.step, + self.environment.width, + self.environment.height, + ) + updated[parent_id] = outcome.parent + updated[outcome.child.id] = outcome.child + self.next_organism_id += 1 + tick_lineage.append(outcome.lineage) + tick_events.append( + { + "kind": "birth", + "tick": self.tick, + "parent_id": parent_id, + "child_id": outcome.child.id, + } + ) + births += 1 + reproduction_transferred += outcome.child.energy + reproduction_spent += outcome.energy_spent + + deaths = 0 + for organism_id in sorted(updated): + before = updated[organism_id] + after = resolve_death(before, self.config.life.max_age) + updated[organism_id] = after + if before.alive and not after.alive: + deaths += 1 + if after.death_cause is None: + raise RuntimeError("death transition is missing a cause") + tick_events.append( + { + "kind": "death", + "tick": self.tick, + "organism_id": organism_id, + "cause": after.death_cause, + } + ) + + if not any(item.alive for item in updated.values()): + self.status = "extinct" + elif capacity_blocked: + self.status = "capacity_exceeded" + + food_spawn_count = min( + self.config.world.food_regen_per_tick, + self.config.world.max_food - len(self.environment.foods), + ) + spawned = self.environment.spawn_food( + self.rng, + food_spawn_count, + self.config.world.food_energy, + ) + food_created = len(spawned) * self.config.world.food_energy + + ledger = EnergyLedger( + organism_start=organism_start, + food_start=food_start, + food_created=food_created, + basal_spent=basal_spent, + sensing_spent=sensing_spent, + movement_spent=movement_spent, + signal_spent=signal_spent, + food_absorbed=food_absorbed, + food_overflow=food_overflow, + reproduction_transferred=reproduction_transferred, + reproduction_spent=reproduction_spent, + organism_end=sum(item.energy for item in updated.values()), + food_end=sum(item.energy for item in self.environment.foods.values()), + ) + ledger.validate() + self.organisms = updated + self.lineage.extend(tick_lineage) + self.events.extend(tick_events) + self.tick += 1 + if self.status == "running" and self.tick == self.config.ticks: + self.status = "completed" + if self.status != "running": + self.events.append( + {"kind": "terminal", "tick": self.tick, "status": self.status} + ) + self.validate() + checksum = self.state_checksum() + return TickResult( + tick=self.tick, + births=births, + deaths=deaths, + food_consumed=len(consumed_food_ids), + food_spawned=len(spawned), + energy=ledger, + status=self.status, + checksum=checksum, + ) + + def validate(self) -> None: + if type(self.tick) is not int or not 0 <= self.tick <= self.config.ticks: + raise RuntimeError("tick is outside configured bounds") + if type(self.rng.state) is not int or not 0 <= self.rng.state < 1 << 64: + raise RuntimeError("RNG state is outside unsigned 64-bit range") + if self.status not in {"running", "completed", "extinct", "capacity_exceeded"}: + raise RuntimeError("unknown simulation status") + if len(self.organisms) > self.config.world.max_entities: + raise RuntimeError("entity count exceeds configured capacity") + if any(key != item.id for key, item in self.organisms.items()): + raise RuntimeError("organism dictionary key does not match embedded ID") + organism_ids = [item.id for item in self.organisms.values()] + if len(set(organism_ids)) != len(organism_ids): + raise RuntimeError("duplicate embedded organism IDs") + if any(key != item.id for key, item in self.environment.foods.items()): + raise RuntimeError("food dictionary key does not match embedded ID") + food_ids = [item.id for item in self.environment.foods.values()] + if len(set(food_ids)) != len(food_ids): + raise RuntimeError("duplicate embedded food IDs") + if ( + type(self.next_organism_id) is not int + or self.next_organism_id <= max(organism_ids, default=0) + ): + raise RuntimeError("next organism ID must exceed every organism ID") + if ( + type(self.environment.next_food_id) is not int + or self.environment.next_food_id <= max(food_ids, default=0) + ): + raise RuntimeError("next food ID must exceed every food ID") + + for organism in self.organisms.values(): + if type(organism.id) is not int or organism.id <= 0: + raise RuntimeError("organism ID must be a positive integer") + if ( + type(organism.x) is not int + or type(organism.y) is not int + or not 0 <= organism.x < self.config.world.width + or not 0 <= organism.y < self.config.world.height + ): + raise RuntimeError("organism position is outside world bounds") + if ( + type(organism.energy) is not int + or not 0 <= organism.energy <= self.config.life.max_energy + ): + raise RuntimeError("organism energy is outside configured bounds") + if type(organism.alive) is not bool: + raise RuntimeError("organism alive state must be boolean") + if organism.alive and organism.energy == 0: + raise RuntimeError("alive organism has zero energy") + if type(organism.signal) is not int or not 0 <= organism.signal <= UNIT: + raise RuntimeError("organism signal is outside [0, UNIT]") + if organism.alive and organism.death_cause is not None: + raise RuntimeError("alive organism has a death cause") + if not organism.alive and organism.death_cause is None: + raise RuntimeError("dead organism is missing a death cause") + if type(organism.generation) is not int or organism.generation < 0: + raise RuntimeError("organism generation is invalid") + if ( + type(organism.heading) is not int + or not 0 <= organism.heading < DIRECTION_COUNT + ): + raise RuntimeError("organism heading is invalid") + for label, value in ( + ("age", organism.age), + ("food_eaten", organism.food_eaten), + ("offspring_count", organism.offspring_count), + ): + if type(value) is not int or value < 0: + raise RuntimeError(f"organism {label} is invalid") + if type(organism.last_reproduction_tick) is not int: + raise RuntimeError("organism last reproduction tick is invalid") + try: + organism.genome.validate() + except (AttributeError, TypeError, ValueError) as error: + raise RuntimeError("organism has an invalid genome") from error + + edges_by_child: dict[int, list[LineageEvent]] = {} + for edge in self.lineage: + if edge.parent_id not in self.organisms: + raise RuntimeError("lineage parent state is missing") + if edge.child_id not in self.organisms: + raise RuntimeError("lineage child state is missing") + if edge.parent_id >= edge.child_id: + raise RuntimeError("lineage parent ID must be lower than child ID") + parent = self.organisms[edge.parent_id] + child = self.organisms[edge.child_id] + if child.parent_id != edge.parent_id: + raise RuntimeError("lineage child parent field mismatch") + if child.generation != parent.generation + 1: + raise RuntimeError("lineage parent and child generation mismatch") + if edge.generation != child.generation: + raise RuntimeError("lineage event generation mismatch") + if type(edge.tick) is not int or not 0 <= edge.tick < max(self.tick, 1): + raise RuntimeError("lineage event tick is invalid") + edges_by_child.setdefault(edge.child_id, []).append(edge) + + for organism in self.organisms.values(): + edges = edges_by_child.get(organism.id, []) + if organism.generation == 0: + if organism.parent_id is not None: + raise RuntimeError("founder must not have a parent") + if edges: + raise RuntimeError("founder must not have a lineage parent edge") + elif len(edges) != 1: + if not edges: + raise RuntimeError("non-founder is missing a lineage edge") + raise RuntimeError("non-founder must have exactly one lineage edge") + + for food in self.environment.foods.values(): + if type(food.id) is not int or food.id <= 0: + raise RuntimeError("food ID must be a positive integer") + if ( + type(food.x) is not int + or type(food.y) is not int + or not 0 <= food.x < self.config.world.width + or not 0 <= food.y < self.config.world.height + ): + raise RuntimeError("food position is outside world bounds") + if type(food.energy) is not int or food.energy <= 0: + raise RuntimeError("food energy must be positive") + + living = any(item.alive for item in self.organisms.values()) + if self.status == "running" and (not living or self.tick >= self.config.ticks): + raise RuntimeError("running status is inconsistent with simulation state") + if self.status == "completed" and ( + self.tick != self.config.ticks or not living + ): + raise RuntimeError("completed status is inconsistent with tick or population") + if self.status == "extinct" and living: + raise RuntimeError("extinct status is inconsistent with living population") + if self.status == "capacity_exceeded" and ( + self.tick <= 0 + or not living + or len(self.organisms) != self.config.world.max_entities + ): + raise RuntimeError( + "capacity_exceeded status requires a full living population after a tick" + ) + + terminal_statuses = {"completed", "extinct", "capacity_exceeded"} + terminal_events: list[dict[str, int | str]] = [] + for event in self.events: + if not isinstance(event, dict): + raise RuntimeError("notable event must be a dictionary") + if event.get("kind") != "terminal": + continue + if ( + set(event) != {"kind", "tick", "status"} + or type(event["tick"]) is not int + or type(event["status"]) is not str + or event["status"] not in terminal_statuses + ): + raise RuntimeError("terminal event has an invalid schema") + terminal_events.append(event) + if self.status == "running": + if terminal_events: + raise RuntimeError("running simulation must not have a terminal event") + elif ( + len(terminal_events) != 1 + or terminal_events[0]["status"] != self.status + or terminal_events[0]["tick"] != self.tick + ): + raise RuntimeError( + "terminal event must uniquely match the terminal status and tick" + ) + if len(self.events) > 2 * self.config.world.max_entities + 1: + raise RuntimeError("notable event count exceeds its configured bound") + + def canonical_state(self) -> dict[str, object]: + return { + "tick": self.tick, + "rng_state": self.rng.state, + "next_organism_id": self.next_organism_id, + "next_food_id": self.environment.next_food_id, + "foods": [ + self.environment.foods[item_id].to_dict() + for item_id in sorted(self.environment.foods) + ], + "organisms": [ + self.organisms[item_id].to_dict() for item_id in sorted(self.organisms) + ], + "lineage": [ + asdict(item) + for item in sorted(self.lineage, key=lambda item: item.child_id) + ], + "status": self.status, + } + + def state_checksum(self) -> str: + return checksum_state(self.canonical_state()) + + def sensor_frame_for(self, organism_id: int) -> SensorFrame: + if isinstance(organism_id, bool) or not isinstance(organism_id, int): + raise ValueError("organism_id must be an integer") + organism = self.organisms.get(organism_id) + if organism is None: + raise ValueError(f"unknown organism_id: {organism_id}") + if not organism.alive: + raise ValueError(f"organism_id is not alive: {organism_id}") + snapshot = SpatialSnapshot.build( + organisms=tuple(item for item in self.organisms.values() if item.alive), + foods=tuple(self.environment.foods.values()), + width=self.environment.width, + height=self.environment.height, + ) + observer = next(item for item in snapshot.organisms if item.id == organism_id) + return self._sensor_frame(observer, snapshot) + + def _sensor_frame( + self, + organism: OrganismSnapshot, + snapshot: SpatialSnapshot, + ) -> SensorFrame: + sensor_range = organism.genome.sensor_range + if organism.genome.field_of_view == DIRECTION_COUNT // 2: + nearest_food, food_density = snapshot._nearest_food_and_count( + organism.x, organism.y, sensor_range + ) + nearest_organism, organism_density = ( + snapshot._nearest_organism_and_count( + organism.x, + organism.y, + sensor_range, + exclude_id=organism.id, + ) + ) + visible_foods = [] + if nearest_food is not None: + distance_squared, error_steps = _target_geometry( + organism, + nearest_food.x, + nearest_food.y, + snapshot.width, + snapshot.height, + ) + visible_foods.append( + (distance_squared, nearest_food.id, error_steps) + ) + visible_organisms = [] + if nearest_organism is not None: + distance_squared, error_steps = _target_geometry( + organism, + nearest_organism.x, + nearest_organism.y, + snapshot.width, + snapshot.height, + ) + visible_organisms.append( + ( + distance_squared, + nearest_organism.id, + error_steps, + nearest_organism.signal, + ) + ) + else: + food_candidates = snapshot.foods_within( + organism.x, organism.y, sensor_range + ) + organism_candidates = snapshot.organisms_within( + organism.x, + organism.y, + sensor_range, + exclude_id=organism.id, + ) + visible_foods = [] + for food in food_candidates: + distance_squared, error_steps = _target_geometry( + organism, + food.x, + food.y, + snapshot.width, + snapshot.height, + ) + if abs(error_steps) <= organism.genome.field_of_view: + visible_foods.append((distance_squared, food.id, error_steps)) + + visible_organisms = [] + for neighbor in organism_candidates: + distance_squared, error_steps = _target_geometry( + organism, + neighbor.x, + neighbor.y, + snapshot.width, + snapshot.height, + ) + if abs(error_steps) <= organism.genome.field_of_view: + visible_organisms.append( + (distance_squared, neighbor.id, error_steps, neighbor.signal) + ) + food_density = len(visible_foods) + organism_density = len(visible_organisms) + + food_distance, food_bearing, _ = _normalized_target( + min(visible_foods, default=None), sensor_range + ) + organism_target = min(visible_organisms, default=None) + organism_distance, organism_bearing, organism_signal = _normalized_target( + organism_target, + sensor_range, + ) + return SensorFrame( + own_energy=normalize_ratio(organism.energy, self.config.life.max_energy), + own_age=normalize_ratio(organism.age, self.config.life.max_age), + food_distance=food_distance, + food_bearing=food_bearing, + food_density=min(food_density, 8) * UNIT // 8, + organism_distance=organism_distance, + organism_bearing=organism_bearing, + organism_signal=organism_signal, + organism_density=min(organism_density, 8) * UNIT // 8, + bias=UNIT, + ) + + +def checksum_state(state: dict[str, object]) -> str: + payload = json.dumps( + state, + sort_keys=True, + separators=(",", ":"), + allow_nan=False, + ).encode("utf-8") + return sha256(payload).hexdigest() + + +def _target_geometry( + observer: OrganismSnapshot, + target_x: int, + target_y: int, + width: int, + height: int, +) -> tuple[int, int]: + dx = toroidal_delta(observer.x, target_x, width) + dy = toroidal_delta(observer.y, target_y, height) + target_heading = direction_for_delta(dx, dy) + return dx * dx + dy * dy, heading_delta(observer.heading, target_heading) + + +def _normalized_target( + target: tuple[int, int, int] | tuple[int, int, int, int] | None, + sensor_range: int, +) -> tuple[int, int, int]: + if target is None: + return UNIT, 0, 0 + distance_squared, _, error_steps, *signal = target + return ( + min(UNIT, isqrt(distance_squared) * UNIT // sensor_range), + error_steps * UNIT // (DIRECTION_COUNT // 2), + signal[0] if signal else 0, + ) diff --git a/antelab/core/spatial.py b/antelab/core/spatial.py new file mode 100644 index 0000000..0373add --- /dev/null +++ b/antelab/core/spatial.py @@ -0,0 +1,370 @@ +"""Immutable, deterministic spatial indexes for start-of-tick queries.""" + +from __future__ import annotations + +from collections.abc import Mapping +from dataclasses import dataclass +from types import MappingProxyType + +from antelab.core.environment import Food +from antelab.core.fixed import UNIT, toroidal_distance_sq +from antelab.core.genome import Genome +from antelab.core.organism import Organism + +CELL_SIZE = 16 * UNIT +Cell = tuple[int, int] + + +@dataclass(frozen=True, eq=False) +class OrganismSnapshot: + """Complete immutable organism state captured at snapshot construction.""" + + id: int + parent_id: int | None + generation: int + genome: Genome + x: int + y: int + heading: int + energy: int + age: int + alive: bool + last_reproduction_tick: int + signal: int + food_eaten: int + offspring_count: int + death_cause: str | None + + def __post_init__(self) -> None: + if not isinstance(self.genome, Genome): + raise ValueError("genome must be a Genome") + Genome.validate(self.genome) + Organism( + id=self.id, + parent_id=self.parent_id, + generation=self.generation, + genome=self.genome, + x=self.x, + y=self.y, + heading=self.heading, + energy=self.energy, + age=self.age, + alive=self.alive, + last_reproduction_tick=self.last_reproduction_tick, + signal=self.signal, + food_eaten=self.food_eaten, + offspring_count=self.offspring_count, + death_cause=self.death_cause, + ) + + @classmethod + def capture(cls, organism: Organism) -> OrganismSnapshot: + return cls( + id=organism.id, + parent_id=organism.parent_id, + generation=organism.generation, + genome=organism.genome, + x=organism.x, + y=organism.y, + heading=organism.heading, + energy=organism.energy, + age=organism.age, + alive=organism.alive, + last_reproduction_tick=organism.last_reproduction_tick, + signal=organism.signal, + food_eaten=organism.food_eaten, + offspring_count=organism.offspring_count, + death_cause=organism.death_cause, + ) + + def _state(self) -> tuple[object, ...]: + return ( + self.id, + self.parent_id, + self.generation, + self.genome, + self.x, + self.y, + self.heading, + self.energy, + self.age, + self.alive, + self.last_reproduction_tick, + self.signal, + self.food_eaten, + self.offspring_count, + self.death_cause, + ) + + def __eq__(self, other: object) -> bool: + if isinstance(other, OrganismSnapshot): + return self._state() == other._state() + if isinstance(other, Organism): + return self._state() == _organism_state(other) + return NotImplemented + + +def _organism_state(organism: Organism) -> tuple[object, ...]: + return ( + organism.id, + organism.parent_id, + organism.generation, + organism.genome, + organism.x, + organism.y, + organism.heading, + organism.energy, + organism.age, + organism.alive, + organism.last_reproduction_tick, + organism.signal, + organism.food_eaten, + organism.offspring_count, + organism.death_cause, + ) + + +def _require_positive_integer(value: int, label: str) -> None: + if isinstance(value, bool) or not isinstance(value, int) or value <= 0: + raise ValueError(f"{label} must be a positive integer") + + +def _require_query_integer(value: int, label: str) -> None: + if isinstance(value, bool) or not isinstance(value, int): + raise ValueError(f"{label} must be an integer") + + +def _freeze_cells[Entity: (Food, OrganismSnapshot)]( + buckets: dict[Cell, list[Entity]], +) -> Mapping[Cell, tuple[Entity, ...]]: + frozen = { + cell: tuple(sorted(entities, key=lambda entity: entity.id)) + for cell, entities in sorted(buckets.items()) + } + return MappingProxyType(frozen) + + +def _axis_cells(position: int, radius: int, size: int, cell_count: int) -> tuple[int, ...]: + position %= size + if radius * 2 >= size: + return tuple(range(cell_count)) + + lower = position - radius + upper = position + radius + segments: list[tuple[int, int]] + if lower < 0: + segments = [(0, upper), (size + lower, size - 1)] + elif upper >= size: + segments = [(lower, size - 1), (0, upper - size)] + else: + segments = [(lower, upper)] + + cells: set[int] = set() + for start, end in segments: + cells.update(range(start // CELL_SIZE, end // CELL_SIZE + 1)) + return tuple(sorted(cells)) + + +@dataclass(frozen=True) +class SpatialSnapshot: + organisms: tuple[OrganismSnapshot, ...] + foods: tuple[Food, ...] + width: int + height: int + organism_cells: Mapping[Cell, tuple[OrganismSnapshot, ...]] + food_cells: Mapping[Cell, tuple[Food, ...]] + cell_count_x: int + cell_count_y: int + + def __post_init__(self) -> None: + _require_positive_integer(self.width, "width") + _require_positive_integer(self.height, "height") + + ordered_organisms = tuple( + sorted( + ( + item + if isinstance(item, OrganismSnapshot) + else OrganismSnapshot.capture(item) + for item in self.organisms + ), + key=lambda organism: organism.id, + ) + ) + ordered_foods = tuple(sorted(self.foods, key=lambda food: food.id)) + if len({organism.id for organism in ordered_organisms}) != len( + ordered_organisms + ): + raise ValueError("duplicate organism IDs") + if len({food.id for food in ordered_foods}) != len(ordered_foods): + raise ValueError("duplicate food IDs") + + organism_buckets: dict[Cell, list[OrganismSnapshot]] = {} + for organism in ordered_organisms: + if not 0 <= organism.x < self.width or not 0 <= organism.y < self.height: + raise ValueError("organism position must be inside the world") + cell = (organism.x // CELL_SIZE, organism.y // CELL_SIZE) + organism_buckets.setdefault(cell, []).append(organism) + + food_buckets: dict[Cell, list[Food]] = {} + for food in ordered_foods: + if not 0 <= food.x < self.width or not 0 <= food.y < self.height: + raise ValueError("food position must be inside the world") + cell = (food.x // CELL_SIZE, food.y // CELL_SIZE) + food_buckets.setdefault(cell, []).append(food) + + object.__setattr__(self, "organisms", ordered_organisms) + object.__setattr__(self, "foods", ordered_foods) + object.__setattr__(self, "organism_cells", _freeze_cells(organism_buckets)) + object.__setattr__(self, "food_cells", _freeze_cells(food_buckets)) + object.__setattr__( + self, "cell_count_x", (self.width + CELL_SIZE - 1) // CELL_SIZE + ) + object.__setattr__( + self, "cell_count_y", (self.height + CELL_SIZE - 1) // CELL_SIZE + ) + + @classmethod + def build( + cls, + organisms: tuple[Organism, ...], + foods: tuple[Food, ...], + width: int, + height: int, + ) -> SpatialSnapshot: + _require_positive_integer(width, "width") + _require_positive_integer(height, "height") + captured_organisms = tuple( + OrganismSnapshot.capture(organism) for organism in organisms + ) + return cls( + organisms=captured_organisms, + foods=foods, + width=width, + height=height, + organism_cells=MappingProxyType({}), + food_cells=MappingProxyType({}), + cell_count_x=1, + cell_count_y=1, + ) + + def _query_cells(self, x: int, y: int, radius: int) -> tuple[Cell, ...]: + _require_query_integer(x, "x") + _require_query_integer(y, "y") + _require_query_integer(radius, "radius") + if radius < 0: + raise ValueError("radius must be non-negative") + xs = _axis_cells(x, radius, self.width, self.cell_count_x) + ys = _axis_cells(y, radius, self.height, self.cell_count_y) + return tuple((cell_x, cell_y) for cell_x in xs for cell_y in ys) + + def foods_within(self, x: int, y: int, radius: int) -> tuple[Food, ...]: + cells = self._query_cells(x, y, radius) + radius_sq = radius * radius + candidates = ( + food + for cell in cells + for food in self.food_cells.get(cell, ()) + ) + return tuple( + sorted( + ( + food + for food in candidates + if toroidal_distance_sq( + x, y, food.x, food.y, self.width, self.height + ) + <= radius_sq + ), + key=lambda food: food.id, + ) + ) + + def _nearest_food_and_count( + self, x: int, y: int, radius: int + ) -> tuple[Food | None, int]: + """Return the deterministic nearest food and exact in-radius count.""" + cells = self._query_cells(x, y, radius) + radius_sq = radius * radius + nearest: Food | None = None + nearest_key: tuple[int, int] | None = None + count = 0 + for cell in cells: + for food in self.food_cells.get(cell, ()): + distance = toroidal_distance_sq( + x, y, food.x, food.y, self.width, self.height + ) + if distance > radius_sq: + continue + count += 1 + key = (distance, food.id) + if nearest_key is None or key < nearest_key: + nearest = food + nearest_key = key + return nearest, count + + def organisms_within( + self, x: int, y: int, radius: int, exclude_id: int + ) -> tuple[OrganismSnapshot, ...]: + _require_query_integer(exclude_id, "exclude_id") + cells = self._query_cells(x, y, radius) + radius_sq = radius * radius + candidates = ( + organism + for cell in cells + for organism in self.organism_cells.get(cell, ()) + ) + return tuple( + sorted( + ( + organism + for organism in candidates + if organism.id != exclude_id + and toroidal_distance_sq( + x, y, organism.x, organism.y, self.width, self.height + ) + <= radius_sq + ), + key=lambda organism: organism.id, + ) + ) + + def _nearest_organism_and_count( + self, x: int, y: int, radius: int, exclude_id: int + ) -> tuple[OrganismSnapshot | None, int]: + """Return the deterministic nearest neighbor and exact in-radius count.""" + _require_query_integer(exclude_id, "exclude_id") + cells = self._query_cells(x, y, radius) + radius_sq = radius * radius + nearest: OrganismSnapshot | None = None + nearest_key: tuple[int, int] | None = None + count = 0 + for cell in cells: + for organism in self.organism_cells.get(cell, ()): + if organism.id == exclude_id: + continue + distance = toroidal_distance_sq( + x, y, organism.x, organism.y, self.width, self.height + ) + if distance > radius_sq: + continue + count += 1 + key = (distance, organism.id) + if nearest_key is None or key < nearest_key: + nearest = organism + nearest_key = key + return nearest, count + + def nearest_food(self, x: int, y: int, radius: int) -> Food | None: + return self._nearest_food_and_count(x, y, radius)[0] + + def nearest_organism( + self, x: int, y: int, radius: int, exclude_id: int + ) -> OrganismSnapshot | None: + return self._nearest_organism_and_count(x, y, radius, exclude_id)[0] + + def food_density(self, x: int, y: int, radius: int) -> int: + return self._nearest_food_and_count(x, y, radius)[1] + + def organism_density(self, x: int, y: int, radius: int, exclude_id: int) -> int: + return self._nearest_organism_and_count(x, y, radius, exclude_id)[1] diff --git a/antelab/engine/__init__.py b/antelab/engine/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/antelab/engine/agent.py b/antelab/engine/agent.py deleted file mode 100644 index 8f3dca5..0000000 --- a/antelab/engine/agent.py +++ /dev/null @@ -1,327 +0,0 @@ -"""Agent: the autonomous entity that perceives, decides, and acts. - -Agents express free-form intents (Constitution Art. IV). -There is no predefined action menu. -""" - -from __future__ import annotations - -import copy -import json -import uuid -from dataclasses import dataclass, field -from typing import Any - -from antelab.engine.types import Action, ActionResult, Perception -from antelab.engine.world import World -from antelab.llm.client import LLMClient - -_DECISION_PROMPT = """\ -You are {name}, living in a small community. -Your personality: {personality} - -Current situation: -- Location: {location} -- Nearby people: {nearby} -- Items you carry: {inventory} -- Items nearby: {nearby_items} -- Your condition: {self_status} -- Environment: {environment} -- Local resources: {local_resources} -- Local features: {local_features} -- Recent events: -{events} -- Tick: {tick} -{company_section}{recipes_section} -Decide what to do next. You can attempt ANYTHING — speak, move, pick \ -something up, give an item to someone, examine your surroundings, rest, \ -or any other action you can imagine. The world will determine whether it \ -is physically possible. - -Respond with valid JSON: -{{ - "verb": "", - "parameters": {{ }}, - "reasoning": "" -}} - -JSON response:""" - - -def _format_counts(values: dict[str, int]) -> str: - return ", ".join( - f"{name}x{qty}" for name, qty in sorted(values.items()) if qty > 0 - ) or "nothing" - - -def _format_mapping(values: dict[str, Any]) -> str: - return ", ".join(f"{key}={value}" for key, value in sorted(values.items())) or "unknown" - - -def _local_recent_events(world: World, location: str, n: int) -> list[str]: - if world.axioms.perception == "global": - return world.get_recent_events(n) - return world.get_recent_events(n, location=location) - - -@dataclass -class Memory: - """Simple memory buffer storing recent events (Constitution Art. III).""" - - events: list[str] = field(default_factory=list) - max_size: int = 50 - - def add(self, event: str) -> None: - self.events.append(event) - if len(self.events) > self.max_size: - self.events = self.events[-self.max_size :] - - def recent(self, n: int = 10) -> list[str]: - return self.events[-n:] - - -@dataclass -class Agent: - """An autonomous agent in the simulation.""" - - id: str - name: str - personality: str - llm: LLMClient - memory: Memory = field(default_factory=Memory) - - @staticmethod - def create( - name: str, - personality: str, - llm: LLMClient, - memory_size: int = 50, - ) -> Agent: - return Agent( - id=str(uuid.uuid4())[:8], - name=name, - personality=personality, - llm=llm, - memory=Memory(max_size=memory_size), - ) - - def perceive(self, world: World) -> Perception: - """Observe the world from this agent's perspective (local only).""" - agent_state = world.agents[self.id] - location = agent_state.location - - company_context: dict[str, Any] = {} - if hasattr(world, "company") and world.company and world.company.enabled: - c = world.company - company_context = { - "name": c.name, - "stage": c.stage, - "cash": c.cash, - "burn_rate": c.operating_cost_per_tick, - "open_demands": [ - { - "id": d.request_id, - "description": d.description, - "required_item": d.required_item, - "reward": d.reward, - "deadline_tick": d.deadline_tick, - } - for d in c.demand_streams - if d.status == "open" - ], - "available_candidates": [ - { - "id": cand.candidate_id, - "name": cand.name, - "joining_cost": cand.joining_cost, - "role_claims": cand.role_claims, - } - for cand in c.candidate_pool - if cand.status == "available" - ], - "team_members": [ - { - "name": ws.name, - "role_claims": ws.role_claims, - } - for ws in world.agents.values() - if ws.alive and ws.role_claims - ], - # Agent-visible suggestions targeted at this agent. - "pending_suggestions": [ - s for s in c.pending_suggestions - if s.get("target_agent_id") == self.id - ], - # Agent-visible organization state. - "organization": c.org.to_summary(), - # Agent-visible office space (excludes valuation). - "office": ( - world.office_space.to_dict() - if world.office_space else {"stage": "garage", "capacity": 3} - ), - } - - recipes_known: dict[str, Any] = {} - if hasattr(world, "recipes") and world.recipes: - recipes_known = { - name: {"inputs": r.inputs, "outputs": r.outputs} - for name, r in world.recipes.items() - } - - return Perception( - tick=world.tick, - location=location, - nearby_agents=world.get_nearby_agents(self.id), - nearby_items=world.get_nearby_items(self.id), - recent_events=_local_recent_events(world, location, 5), - inventory=dict(agent_state.inventory), - self_status={ - "life_stage": agent_state.life_stage, - "vitality": agent_state.vitality, - "stress": agent_state.stress, - "hunger": agent_state.hunger, - "fatigue": agent_state.fatigue, - "contagion_status": agent_state.contagion_profile.get("status", "unknown"), - }, - environment=copy.deepcopy(world.environment), - local_resources=dict(world.location_items.get(location, {})), - local_features=dict(world.location_features.get(location, {})), - company_context=company_context, - recipes_known=recipes_known, - ) - - async def decide(self, perception: Perception) -> Action: - """Use the LLM to express a free-form intent.""" - company_section = "" - if perception.company_context: - cc = perception.company_context - lines = [f"\nCompany: {cc['name']} (stage: {cc['stage']})"] - lines.append(f" Cash: {cc['cash']} (burn: {cc['burn_rate']}/tick)") - if cc["open_demands"]: - for d in cc["open_demands"]: - lines.append( - f" Demand: {d['description']} — needs {d['required_item']}, " - f"reward {d['reward']}, deadline tick {d['deadline_tick']}" - ) - else: - lines.append(" No open demands.") - if cc["available_candidates"]: - for cand in cc["available_candidates"]: - lines.append( - f" Candidate: {cand['name']} (cost: {cand['joining_cost']}, " - f"roles: {', '.join(cand['role_claims'])})" - ) - if cc["team_members"]: - members = ", ".join( - f"{m['name']}[{','.join(m['role_claims'])}]" for m in cc["team_members"] - ) - lines.append(f" Team: {members}") - # Pending suggestions for this agent. - suggestions = cc.get("pending_suggestions", []) - if suggestions: - lines.append(" Pending suggestions:") - for sug in suggestions: - lines.append( - f" [{sug['suggestion_id']}] {sug['message']}" - ) - lines.append( - " To accept: accept_suggestion(suggestion_id). " - "To modify: modify_suggestion(suggestion_id, " - "modifications={name: '...'}). To ignore: do nothing." - ) - # Organization state. - org = cc.get("organization", {}) - if org.get("departments"): - dept_list = ", ".join( - f"{d['name']}(lead:{d['lead_agent_id']}, {len(d['member_agent_ids'])} members)" - for d in org["departments"] - ) - lines.append(f" Departments: {dept_list}") - if org.get("roles"): - role_list = ", ".join( - f"{r['name']}({r['holder_agent_id']})" for r in org["roles"] - ) - lines.append(f" Roles: {role_list}") - # Office space. - office = cc.get("office", {}) - if office: - lines.append( - f" Office: {office.get('stage', 'garage')} " - f"(capacity: {office.get('capacity', 0)})" - ) - lines.append( - " You can: craft (recipe), deliver (item, demand), " - "recruit (candidate_id), interview (candidate_id), " - "write_artifact (title, body), " - "read_artifact (artifact_id), update_artifact (artifact_id, body), " - "accept_suggestion (suggestion_id), " - "modify_suggestion (suggestion_id, modifications), " - "create_role (role_name, department_id?), " - "form_team (team_name, member_ids)." - ) - company_section = "\n".join(lines) + "\n" - - recipes_section = "" - if perception.recipes_known: - lines = ["\nKnown recipes:"] - for name, r in perception.recipes_known.items(): - inputs = ", ".join(f"{k}x{v}" for k, v in r["inputs"].items()) - outputs = ", ".join(f"{k}x{v}" for k, v in r["outputs"].items()) - lines.append(f" {name}: {inputs} -> {outputs}") - recipes_section = "\n".join(lines) + "\n" - - prompt = _DECISION_PROMPT.format( - name=self.name, - personality=self.personality, - location=perception.location, - nearby=", ".join(perception.nearby_agents) or "nobody", - inventory=( - ", ".join( - f"{item}x{qty}" - for item, qty in sorted(perception.inventory.items()) - if qty > 0 - ) or "nothing" - ), - nearby_items=", ".join(perception.nearby_items) or "nothing", - self_status=", ".join( - f"{key}={value}" for key, value in perception.self_status.items() - ) or "unknown", - environment=_format_mapping(perception.environment), - local_resources=_format_counts(perception.local_resources), - local_features=_format_counts(perception.local_features), - events="\n".join(f" - {e}" for e in perception.recent_events) or " - nothing yet", - tick=perception.tick, - company_section=company_section, - recipes_section=recipes_section, - ) - - try: - response = await self.llm.complete_json(prompt) - return Action( - agent_id=self.id, - verb=response.get("verb", "rest"), - parameters=response.get("parameters", {}), - reasoning=response.get("reasoning", ""), - ) - except (json.JSONDecodeError, KeyError): - return Action( - agent_id=self.id, - verb="rest", - reasoning="Failed to parse LLM response", - ) - - def remember(self, result: ActionResult) -> None: - """Store the outcome of an action in memory.""" - self.memory.add(result.description) - - def restore_private_state( - self, - *, - personality: str | None = None, - memory_events: list[str] | None = None, - ) -> None: - """Restore narrative state from a snapshot (world state is loaded separately).""" - if personality is not None: - self.personality = personality - if memory_events is not None: - self.memory.events = memory_events[-self.memory.max_size :] diff --git a/antelab/engine/market.py b/antelab/engine/market.py deleted file mode 100644 index 7551947..0000000 --- a/antelab/engine/market.py +++ /dev/null @@ -1,206 +0,0 @@ -"""Market system: demand generation, escalation, shocks, and revenue tracking.""" - -from __future__ import annotations - -import random -import uuid -from dataclasses import dataclass, field -from typing import Any - -from antelab.engine.types import CompanyDemand - -# Item pools per stage — used by generate_demands() to create stage-appropriate -# required deliverables. Each tuple is (item_name, description_template). -_DEMAND_ITEM_POOL: dict[str, list[tuple[str, str]]] = { - "garage": [ - ("prototype", "Ship a working {item}"), - ("report", "Deliver a {item} summarizing progress"), - ], - "workshop": [ - ("prototype", "Ship an improved {item}"), - ("report", "Deliver a {item} on delivery metrics"), - ("design_spec", "Write a {item} for the next feature"), - ], - "formal": [ - ("prototype", "Ship a polished {item}"), - ("report", "Deliver a compliance {item}"), - ("design_spec", "Produce a {item} for enterprise review"), - ("integration", "Complete {item} with partner system"), - ], - "scale": [ - ("prototype", "Ship a scalable {item}"), - ("report", "Deliver a quarterly {item}"), - ("design_spec", "Create a {item} for new market segment"), - ("integration", "Complete multi-tenant {item}"), - ("bulk_order", "Fulfill {item} for enterprise client"), - ], - "mature": [ - ("prototype", "Ship a strategic {item}"), - ("report", "Deliver an annual {item}"), - ("design_spec", "Produce a {item} for acquisition target"), - ("integration", "Complete global {item} rollout"), - ("bulk_order", "Fulfill {item} for multi-year contract"), - ], -} - - -@dataclass -class MarketState: - """Runtime market state for company emergence scenarios.""" - - active_demands: list[CompanyDemand] = field(default_factory=list) - shock_pool: dict[str, list[dict[str, Any]]] = field(default_factory=dict) - demand_difficulty_by_stage: dict[str, int] = field( - default_factory=lambda: { - "garage": 1, "workshop": 2, "formal": 3, "scale": 4, "mature": 5, - } - ) - max_open_demands: int = 5 - demand_generation_every: int = 3 - reward_base: dict[str, int] = field( - default_factory=lambda: { - "garage": 5, "workshop": 15, "formal": 40, "scale": 100, "mature": 500, - } - ) - reward_spread: float = 0.5 - deadline_ticks_base: dict[str, int] = field( - default_factory=lambda: { - "garage": 10, "workshop": 15, "formal": 20, "scale": 30, "mature": 50, - } - ) - ticks_since_last_generation: int = 0 - total_revenue_earned: int = 0 - demand_history: list[dict[str, Any]] = field(default_factory=list) - active_shocks: list[dict[str, Any]] = field(default_factory=list) - stage_transitioned: bool = False - - def count_open_demands(self) -> int: - return sum(1 for d in self.active_demands if d.status == "open") - - def generate_demands(self, stage: str, current_tick: int) -> list[CompanyDemand]: - """Create new open demands appropriate for the company stage.""" - open_count = self.count_open_demands() - slots = max(0, self.max_open_demands - open_count) - if slots <= 0: - return [] - - # Generate 1-2 new demands per generation cycle (capped by slots). - to_generate = min(random.randint(1, 2), slots) - difficulty = self.demand_difficulty_by_stage.get(stage, 1) - base_reward = self.reward_base.get(stage, 5) - base_deadline = self.deadline_ticks_base.get(stage, 10) - item_pool = _DEMAND_ITEM_POOL.get(stage, _DEMAND_ITEM_POOL["garage"]) - - new_demands: list[CompanyDemand] = [] - for _ in range(to_generate): - item_name, desc_template = random.choice(item_pool) - reward = int( - base_reward - * (1 + random.uniform(-self.reward_spread, self.reward_spread)) - ) - reward = max(1, reward * difficulty) - deadline = current_tick + base_deadline + random.randint(-2, 4) - deadline = max(current_tick + 2, deadline) - - demand = CompanyDemand( - request_id=f"demand-{current_tick}-{uuid.uuid4().hex[:6]}", - description=desc_template.format(item=item_name), - required_item=item_name, - reward=reward, - deadline_tick=deadline, - status="open", - ) - new_demands.append(demand) - - self.active_demands.extend(new_demands) - self.ticks_since_last_generation = 0 - return new_demands - - def escalate_demands(self, new_stage: str, _current_tick: int) -> int: - """Upgrade open demands to match a new company stage. Returns count of escalated demands.""" - new_reward_base = self.reward_base.get(new_stage, self.reward_base.get("garage", 5)) - escalated = 0 - for demand in self.active_demands: - if demand.status == "open": - ratio = max(1, new_reward_base / max(1, demand.reward)) - demand.reward = max(demand.reward, int(demand.reward * ratio)) - escalated += 1 - self.stage_transitioned = True - return escalated - - def apply_market_shock( - self, stage: str, current_tick: int, rng: random.Random | None = None - ) -> dict[str, Any] | None: - """Randomly draw and apply a market shock. Returns the shock dict or None.""" - rand = rng or random - stage_shocks = list(self.shock_pool.get(stage, [])) - global_shocks = list(self.shock_pool.get("global", [])) - all_shocks = stage_shocks + global_shocks - if not all_shocks: - return None - - # Each shock has a "weight" field; draw one. - total_weight = sum(float(s.get("weight", 0.1)) for s in all_shocks) - roll = rand.uniform(0, total_weight) - cumulative = 0.0 - chosen: dict[str, Any] | None = None - for shock in all_shocks: - cumulative += float(shock.get("weight", 0.1)) - if roll <= cumulative: - chosen = dict(shock) - break - if chosen is None: - return None - - shock = chosen - shock["applied_tick"] = current_tick - kind = shock.get("kind", "") - - if kind == "demand_shift": - # Replace open demands with new ones at a potentially different stage. - self.active_demands = [d for d in self.active_demands if d.status != "open"] - # Use the current stage directly for replacement demands. - target_stage = shock.get("target_stage", stage) - self.generate_demands(target_stage, current_tick) - - elif kind == "economic_downturn": - # Reduce rewards on all open demands. - factor = float(shock.get("reward_factor", 0.5)) - for demand in self.active_demands: - if demand.status == "open": - demand.reward = max(1, int(demand.reward * factor)) - downtime_ticks = int(shock.get("duration_ticks", 5)) - shock["expires_tick"] = current_tick + downtime_ticks - - elif kind == "competitor_entry": - # Shorten deadlines on open demands (urgency). - reduction = int(shock.get("deadline_reduction", 5)) - for demand in self.active_demands: - if demand.status == "open": - demand.deadline_tick = max(current_tick + 1, demand.deadline_tick - reduction) - - elif kind == "boom": - # Double rewards on open demands. - factor = float(shock.get("reward_factor", 2.0)) - for demand in self.active_demands: - if demand.status == "open": - demand.reward = int(demand.reward * factor) - boom_ticks = int(shock.get("duration_ticks", 5)) - shock["expires_tick"] = current_tick + boom_ticks - - self.active_shocks.append(shock) - return shock - - def record_delivery(self, reward: int) -> None: - """Record a successful delivery.""" - self.total_revenue_earned += reward - self.demand_history.append({"reward": reward}) - - def mark_expired_shocks(self, current_tick: int) -> int: - """Remove shocks past their expiration. Returns count of expired shocks.""" - before = len(self.active_shocks) - self.active_shocks = [ - s for s in self.active_shocks - if s.get("expires_tick", 0) > current_tick - ] - return before - len(self.active_shocks) diff --git a/antelab/engine/measurement.py b/antelab/engine/measurement.py deleted file mode 100644 index e91117d..0000000 --- a/antelab/engine/measurement.py +++ /dev/null @@ -1,242 +0,0 @@ -"""Measurement framework for civilization experiments. - -Records per-tick metrics without affecting simulation behavior. -Designed for comparing experiment runs against the baseline. -""" - -from __future__ import annotations - -import copy -from collections import Counter -from dataclasses import dataclass, field -from typing import TYPE_CHECKING, Any - -from antelab.engine.types import Action, ActionResult - -if TYPE_CHECKING: - from antelab.engine.world import AgentState, World - - -@dataclass -class TickMeasurement: - """Metrics collected during a single tick.""" - - tick: int - action_verbs: Counter[str] = field(default_factory=Counter) - resource_transfers: list[dict[str, Any]] = field(default_factory=list) - agent_locations: dict[str, str] = field(default_factory=dict) - communication_count: int = 0 - cooperation_events: int = 0 - defection_events: int = 0 - failed_actions: int = 0 - total_actions: int = 0 - alive_agents: int = 0 - dead_agents: int = 0 - births: int = 0 - deaths: int = 0 - resource_total: int = 0 - disease_infected: int = 0 - season: str = "" - - -class ExperimentObserver: - """Collects structured measurements across ticks for experiment analysis.""" - - #: Drop unmatched give markers after this many ticks to cap memory / stale keys. - _PENDING_GIVE_MAX_AGE_TICKS = 50 - #: Retain enough ticks for target long-run experiments while bounding memory. - MAX_RETAINED_TICKS = 10_000 - - def __init__(self, max_retained_ticks: int | None = None) -> None: - self.ticks: list[TickMeasurement] = [] - self.action_trace: list[dict[str, Any]] = [] - self._current: TickMeasurement | None = None - self._pending_gives: dict[str, dict[str, Any]] = {} - self._max_retained_ticks = max(1, max_retained_ticks or self.MAX_RETAINED_TICKS) - - def begin_tick(self, tick: int) -> None: - max_age = self._PENDING_GIVE_MAX_AGE_TICKS - for key, entry in list(self._pending_gives.items()): - recorded = int(entry.get("recorded_at_tick", tick)) - if tick - recorded > max_age: - del self._pending_gives[key] - self._current = TickMeasurement(tick=tick) - - def record_action(self, action: Action, result: ActionResult) -> None: - if self._current is None: - return - - self._current.total_actions += 1 - self._current.action_verbs[action.verb] += 1 - self.action_trace.append( - { - "tick": self._current.tick, - "agent_id": action.agent_id, - "verb": action.verb, - "parameters": copy.deepcopy(action.parameters), - "success": bool(result.success), - "description": result.description, - "state_changes": copy.deepcopy(result.state_changes), - "events": list(result.events), - } - ) - - if not result.success: - self._current.failed_actions += 1 - - verb = action.verb.lower().strip() - - if verb in ("say", "speak", "talk", "tell") and result.success: - self._current.communication_count += 1 - - if verb in ("give", "offer", "hand") and result.success: - peer_id = result.observer_meta.get("peer_agent_id") - transfer = { - "from": action.agent_id, - "to": peer_id or action.parameters.get("target", ""), - "item": action.parameters.get("item", ""), - "quantity": int(action.parameters.get("quantity", 1)), - } - self._current.resource_transfers.append(transfer) - if peer_id: - key = f"{action.agent_id}->{peer_id}" - self._pending_gives[key] = { - "recorded_at_tick": self._current.tick, - "transfer": transfer, - } - - if verb in ("take", "grab", "pickup", "pick_up") and result.success: - peer_id = result.observer_meta.get("peer_agent_id") - if peer_id: - reverse_key = f"{peer_id}->{action.agent_id}" - if reverse_key in self._pending_gives: - self._current.cooperation_events += 1 - del self._pending_gives[reverse_key] - - def record_locations(self, agent_locations: dict[str, str]) -> None: - if self._current is not None: - self._current.agent_locations = dict(agent_locations) - - def record_world_state(self, world: World) -> None: - if self._current is None: - return - agents = list(world.agents.values()) - self._current.alive_agents = sum(1 for agent in agents if agent.alive) - self._current.dead_agents = sum(1 for agent in agents if not agent.alive) - self._current.births = int(getattr(world, "total_births", 0)) - self._current.deaths = int(getattr(world, "total_deaths", 0)) - self._current.resource_total = self._positive_resource_total(world) - self._current.disease_infected = sum( - 1 - for agent in agents - if self._has_active_infection(agent) - ) - self._current.season = str(getattr(world, "environment", {}).get("season", "")) - - def end_tick(self) -> None: - if self._current is not None: - self.ticks.append(self._current) - self._trim_retained_ticks() - self._current = None - - def _trim_retained_ticks(self) -> None: - extra = len(self.ticks) - self._max_retained_ticks - if extra > 0: - del self.ticks[:extra] - - @staticmethod - def _positive_resource_total(world: World) -> int: - location_total = sum( - int(qty) - for items in world.location_items.values() - for qty in items.values() - if int(qty) > 0 - ) - inventory_total = sum( - int(qty) - for agent in world.agents.values() - for qty in agent.inventory.values() - if int(qty) > 0 - ) - return location_total + inventory_total - - @staticmethod - def _has_active_infection(agent: AgentState) -> bool: - if not agent.alive or not bool(agent.contagion_profile.get("infectious", False)): - return False - status = agent.contagion_profile.get("status") - return status in (None, "infected") - - def summary(self) -> dict[str, Any]: - """Aggregate metrics across all recorded ticks.""" - if not self.ticks: - return {"ticks_recorded": 0} - - total_verbs: Counter[str] = Counter() - total_comms = 0 - total_transfers = 0 - total_cooperation = 0 - total_failed = 0 - total_actions = 0 - - colocation_counts: Counter[tuple[str, str]] = Counter() - - for tick in self.ticks: - total_verbs += tick.action_verbs - total_comms += tick.communication_count - total_transfers += len(tick.resource_transfers) - total_cooperation += tick.cooperation_events - total_failed += tick.failed_actions - total_actions += tick.total_actions - - agents_at: dict[str, list[str]] = {} - for agent_id, loc in tick.agent_locations.items(): - agents_at.setdefault(loc, []).append(agent_id) - for loc_agents in agents_at.values(): - for i, a in enumerate(loc_agents): - for b in loc_agents[i + 1:]: - pair = tuple(sorted([a, b])) - colocation_counts[pair] += 1 # type: ignore[arg-type] - - top_colocations = colocation_counts.most_common(10) - - return { - "ticks_recorded": len(self.ticks), - "action_distribution": dict(total_verbs.most_common()), - "total_communications": total_comms, - "total_resource_transfers": total_transfers, - "total_cooperation_events": total_cooperation, - "total_failed_actions": total_failed, - "total_actions": total_actions, - "failure_rate": total_failed / max(1, total_actions), - "top_colocation_pairs": [ - {"agents": list(pair), "ticks_together": count} - for pair, count in top_colocations - ], - "final_alive_agents": self.ticks[-1].alive_agents, - "final_resource_total": self.ticks[-1].resource_total, - "peak_disease_infected": max(t.disease_infected for t in self.ticks), - } - - def to_json(self) -> list[dict[str, Any]]: - """Serialize all tick measurements for storage/comparison.""" - return [ - { - "tick": t.tick, - "action_verbs": dict(t.action_verbs), - "resource_transfers": t.resource_transfers, - "communication_count": t.communication_count, - "cooperation_events": t.cooperation_events, - "failed_actions": t.failed_actions, - "total_actions": t.total_actions, - "agent_locations": t.agent_locations, - "alive_agents": t.alive_agents, - "dead_agents": t.dead_agents, - "births": t.births, - "deaths": t.deaths, - "resource_total": t.resource_total, - "disease_infected": t.disease_infected, - "season": t.season, - } - for t in self.ticks - ] diff --git a/antelab/engine/org.py b/antelab/engine/org.py deleted file mode 100644 index 0dbe369..0000000 --- a/antelab/engine/org.py +++ /dev/null @@ -1,240 +0,0 @@ -"""Organization system: departments, roles, rules, and formal org state. - -Unlike the passive observer-only clustering in world.py, this module provides -agent-visible organization state. Agents perceive departments, roles, and rules -as part of their company context, enabling them to make informed decisions about -organizational structure. -""" - -from __future__ import annotations - -from dataclasses import dataclass, field -from typing import Any - - -@dataclass -class Department: - """A formal department or team within the company.""" - - dept_id: str - name: str - lead_agent_id: str - member_agent_ids: list[str] = field(default_factory=list) - created_tick: int = 0 - parent_dept_id: str | None = None - suggestion_id: str | None = None # trace back to originating suggestion - - def to_dict(self) -> dict[str, Any]: - return { - "dept_id": self.dept_id, - "name": self.name, - "lead_agent_id": self.lead_agent_id, - "member_agent_ids": list(self.member_agent_ids), - "created_tick": self.created_tick, - "parent_dept_id": self.parent_dept_id, - } - - -@dataclass -class Role: - """A named role held by an agent, optionally within a department.""" - - role_id: str - name: str - holder_agent_id: str - department_id: str | None = None - created_tick: int = 0 - - def to_dict(self) -> dict[str, Any]: - return { - "role_id": self.role_id, - "name": self.name, - "holder_agent_id": self.holder_agent_id, - "department_id": self.department_id, - "created_tick": self.created_tick, - } - - -@dataclass -class Rule: - """A company rule or policy created by agents.""" - - rule_id: str - description: str - created_by_agent_id: str - created_tick: int = 0 - active: bool = True - - def to_dict(self) -> dict[str, Any]: - return { - "rule_id": self.rule_id, - "description": self.description, - "created_by_agent_id": self.created_by_agent_id, - "created_tick": self.created_tick, - "active": self.active, - } - - -@dataclass -class OrganizationState: - """Runtime organization state for company emergence scenarios. - - Agent-visible: included in perception via company_context. - Replaces the passive observer-only clustering in world.py. - """ - - departments: list[Department] = field(default_factory=list) - roles: list[Role] = field(default_factory=list) - rules: list[Rule] = field(default_factory=list) - charter_artifact_id: str | None = None - max_departments: int = 12 - min_members_for_team: int = 2 - - # -- Department management -- - - def get_department(self, dept_id: str) -> Department | None: - for dept in self.departments: - if dept.dept_id == dept_id: - return dept - return None - - def add_department( - self, - name: str, - lead_agent_id: str, - member_agent_ids: list[str] | None = None, - created_tick: int = 0, - parent_dept_id: str | None = None, - suggestion_id: str | None = None, - ) -> Department | None: - """Create a new department. Returns None if at max capacity.""" - if len(self.departments) >= self.max_departments: - return None - dept = Department( - dept_id=f"dept-{len(self.departments) + 1:03d}", - name=name, - lead_agent_id=lead_agent_id, - member_agent_ids=list(member_agent_ids or []), - created_tick=created_tick, - parent_dept_id=parent_dept_id, - suggestion_id=suggestion_id, - ) - self.departments.append(dept) - return dept - - def remove_department(self, dept_id: str) -> bool: - for i, dept in enumerate(self.departments): - if dept.dept_id == dept_id: - self.departments.pop(i) - return True - return False - - def assign_agent_to_department(self, agent_id: str, dept_id: str) -> bool: - dept = self.get_department(dept_id) - if dept is None: - return False - if agent_id not in dept.member_agent_ids: - dept.member_agent_ids.append(agent_id) - return True - - def remove_agent_from_department(self, agent_id: str, dept_id: str) -> bool: - dept = self.get_department(dept_id) - if dept is None: - return False - if agent_id in dept.member_agent_ids: - dept.member_agent_ids.remove(agent_id) - return True - return False - - def agent_departments(self, agent_id: str) -> list[Department]: - """All departments the agent belongs to (as member or lead).""" - return [ - d for d in self.departments - if agent_id in d.member_agent_ids or d.lead_agent_id == agent_id - ] - - def department_count(self) -> int: - return len(self.departments) - - # -- Role management -- - - def get_role(self, role_id: str) -> Role | None: - for role in self.roles: - if role.role_id == role_id: - return role - return None - - def add_role( - self, - name: str, - holder_agent_id: str, - department_id: str | None = None, - created_tick: int = 0, - ) -> Role: - role = Role( - role_id=f"role-{len(self.roles) + 1:03d}", - name=name, - holder_agent_id=holder_agent_id, - department_id=department_id, - created_tick=created_tick, - ) - self.roles.append(role) - return role - - def remove_role(self, role_id: str) -> bool: - for i, role in enumerate(self.roles): - if role.role_id == role_id: - self.roles.pop(i) - return True - return False - - def agent_roles(self, agent_id: str) -> list[Role]: - return [r for r in self.roles if r.holder_agent_id == agent_id] - - # -- Rule management -- - - def add_rule( - self, - description: str, - created_by_agent_id: str, - created_tick: int = 0, - ) -> Rule: - rule = Rule( - rule_id=f"rule-{len(self.rules) + 1:03d}", - description=description, - created_by_agent_id=created_by_agent_id, - created_tick=created_tick, - active=True, - ) - self.rules.append(rule) - return rule - - def deactivate_rule(self, rule_id: str) -> bool: - rule = self._get_rule(rule_id) - if rule is None: - return False - rule.active = False - return True - - def _get_rule(self, rule_id: str) -> Rule | None: - for rule in self.rules: - if rule.rule_id == rule_id: - return rule - return None - - def active_rules(self) -> list[Rule]: - return [r for r in self.rules if r.active] - - # -- Serialization -- - - def to_summary(self) -> dict[str, Any]: - """Produce an agent-visible summary of the organization state.""" - return { - "department_count": len(self.departments), - "departments": [d.to_dict() for d in self.departments], - "role_count": len(self.roles), - "roles": [r.to_dict() for r in self.roles], - "rule_count": len(self.rules), - "active_rules": [r.to_dict() for r in self.active_rules()], - "has_charter": self.charter_artifact_id is not None, - } diff --git a/antelab/engine/pattern.py b/antelab/engine/pattern.py deleted file mode 100644 index 55c198a..0000000 --- a/antelab/engine/pattern.py +++ /dev/null @@ -1,162 +0,0 @@ -"""Pattern detector: sliding-window behavior analysis and suggestion generation. - -Core innovation of the company emergence loop. The detector watches agent -actions across ticks, categorizes them, and when a category exceeds the -threshold within the sliding window, generates a "suggestion" event for -that agent. Agents can accept, modify, or ignore suggestions via new verbs -(see antelab.engine.org). -""" - -from __future__ import annotations - -import enum -from dataclasses import dataclass, field -from typing import Any - - -class BehaviorCategory(enum.Enum): - DELIVERY = "delivery" - CRAFTING = "crafting" - COORDINATION = "coordination" - DELEGATION = "delegation" - PLANNING = "planning" - - -# Verb-to-category mapping. Aliases cover the full resolver map in world.py. -_VERB_CATEGORY: dict[str, BehaviorCategory] = { - "deliver": BehaviorCategory.DELIVERY, - "ship": BehaviorCategory.DELIVERY, - "craft": BehaviorCategory.CRAFTING, - "make": BehaviorCategory.CRAFTING, - "build": BehaviorCategory.CRAFTING, - "say": BehaviorCategory.COORDINATION, - "speak": BehaviorCategory.COORDINATION, - "talk": BehaviorCategory.COORDINATION, - "give": BehaviorCategory.COORDINATION, - "take": BehaviorCategory.COORDINATION, - "examine": BehaviorCategory.COORDINATION, - "inspect": BehaviorCategory.COORDINATION, - "recruit": BehaviorCategory.DELEGATION, - "hire": BehaviorCategory.DELEGATION, - "create_role": BehaviorCategory.DELEGATION, - "form_team": BehaviorCategory.DELEGATION, - "write_artifact": BehaviorCategory.PLANNING, - "write_note": BehaviorCategory.PLANNING, - "read_artifact": BehaviorCategory.PLANNING, - "read_note": BehaviorCategory.PLANNING, - "update_artifact": BehaviorCategory.PLANNING, - "revise_artifact": BehaviorCategory.PLANNING, -} - -# Suggestion message templates per category. -_SUGGESTION_MESSAGES: dict[BehaviorCategory, str] = { - BehaviorCategory.DELIVERY: ( - "You have been delivering frequently. " - "Consider forming a Delivery Department to streamline shipping." - ), - BehaviorCategory.CRAFTING: ( - "You have been crafting often. " - "Consider forming a Production Department to coordinate building." - ), - BehaviorCategory.COORDINATION: ( - "You are frequently communicating and deciding with others. " - "Consider establishing a joint decision rule to formalize collaboration." - ), - BehaviorCategory.DELEGATION: ( - "You keep assigning work and hiring. " - "Consider formalizing a Manager role to lead the growing team." - ), - BehaviorCategory.PLANNING: ( - "You have been writing and reading company knowledge consistently. " - "Consider creating a company charter to codify practices." - ), -} - - -@dataclass -class PatternDetector: - """Sliding-window behavior pattern detector. - - Tracks each agent's categorized actions over time. When a behavior - category exceeds the threshold within the sliding window, generates - suggestion events for the agent. - """ - - window_ticks: int = 20 - threshold: int = 5 - suggestion_expiry_ticks: int = 5 - # agent_id -> list of (tick, BehaviorCategory) tuples - action_log: dict[str, list[tuple[int, BehaviorCategory]]] = field( - default_factory=dict - ) - - def track_action(self, agent_id: str, verb: str, _params: dict[str, Any] | None = None) -> None: - """Categorize and log an action for the given agent.""" - category = _VERB_CATEGORY.get(verb) - if category is None: - return - entry = (0, category) # tick will be filled by track_tick - self.action_log.setdefault(agent_id, []).append(entry) - - def track_action_at_tick( - self, agent_id: str, tick: int, verb: str, _params: dict[str, Any] | None = None - ) -> None: - """Categorize and log an action with the specific tick.""" - category = _VERB_CATEGORY.get(verb) - if category is None: - return - self.action_log.setdefault(agent_id, []).append((tick, category)) - - def prune_logs(self, current_tick: int) -> None: - """Remove entries outside the sliding window for all agents.""" - cutoff = current_tick - self.window_ticks - for agent_id in list(self.action_log.keys()): - self.action_log[agent_id] = [ - (t, c) for t, c in self.action_log[agent_id] if t > cutoff - ] - if not self.action_log[agent_id]: - del self.action_log[agent_id] - - def detect( - self, agent_id: str, current_tick: int - ) -> dict[BehaviorCategory, int]: - """Count actions per category within the sliding window. - - Returns only categories with at least one action recorded. - """ - cutoff = current_tick - self.window_ticks - entries = self.action_log.get(agent_id, []) - counts: dict[BehaviorCategory, int] = {} - for tick, category in entries: - if tick > cutoff: - counts[category] = counts.get(category, 0) + 1 - return counts - - def generate_suggestions( - self, agent_id: str, current_tick: int, company_stage: str = "garage" - ) -> list[dict[str, Any]]: - """Generate suggestion dicts for categories exceeding the threshold. - - Returns a list of suggestion dicts, each containing: - suggestion_id, category, message, target_agent_id, tick, stage - """ - counts = self.detect(agent_id, current_tick) - suggestions: list[dict[str, Any]] = [] - for category, count in counts.items(): - if count >= self.threshold: - msg = _SUGGESTION_MESSAGES.get( - category, - f"You have been doing {category.value} regularly. Formalize this?", - ) - suggestion: dict[str, Any] = { - "suggestion_id": ( - f"sug-{agent_id}-{category.value}-{current_tick}" - ), - "category": category.value, - "message": msg, - "target_agent_id": agent_id, - "tick": current_tick, - "stage": company_stage, - } - suggestions.append(suggestion) - return suggestions diff --git a/antelab/engine/receipts.py b/antelab/engine/receipts.py deleted file mode 100644 index 5114332..0000000 --- a/antelab/engine/receipts.py +++ /dev/null @@ -1,554 +0,0 @@ -"""Deterministic receipt verification for agent claims. - -The receipt layer is evaluator-only: it consumes action traces and state-change -evidence after the world has resolved actions. It does not mutate the world and -does not feed receipt evidence back into live agent perception. -""" - -from __future__ import annotations - -from dataclasses import dataclass, field -from typing import Any, Literal - -ClaimKind = Literal["completion", "intent", "handoff", "assumption"] -ReceiptStatus = Literal["supported", "unsupported", "unknown"] - -_SPEECH_VERBS = {"say", "speak", "talk", "tell"} -_MATERIAL_ACTION_CATEGORIES: dict[str, str] = { - "deliver": "deliver", - "ship": "deliver", - "store": "store", - "stash": "store", - "give": "give", - "offer": "give", - "hand": "give", - "write_artifact": "artifact", - "write_note": "artifact", - "update_artifact": "artifact", - "revise_artifact": "artifact", - "recruit": "recruit", - "hire": "recruit", - "create_role": "role", - "form_team": "team", - "accept_suggestion": "team", - "modify_suggestion": "team", -} -_CATEGORY_EVIDENCE_MARKERS: dict[str, tuple[str, ...]] = { - "deliver": ("company.demand", "company_cash", "request_id", "delivered"), - "store": ("stored", "location_items", "agent_inventory"), - "give": ("agent_inventory", "inventory", "peer_agent_id"), - "artifact": ("artifact", "company.artifacts", "artifact_id", "revision"), - "recruit": ("candidate", "pending_recruits", "company_cash"), - "role": ("role_id", "role_name", "company.org.roles"), - "team": ("dept_id", "team_name", "department_created", "company.org.departments"), -} -_COMPLETION_TERMS = ( - "done", - "complete", - "completed", - "finished", - "delivered", - "shipped", - "stored", - "handed off", - "handed it off", - "sent", - "wrote", - "written", - "updated", - "recruited", - "hired", - "created role", - "formed team", -) -_AMBIGUOUS_COMPLETION_TERMS = ( - "handled it", - "took care of it", - "sorted it", - "all set", -) - - -@dataclass(frozen=True) -class Claim: - """A deterministic claim extracted from action metadata or narrow speech.""" - - id: str - tick: int - agent_id: str - kind: ClaimKind - text: str - target: str | None = None - required_evidence: tuple[str, ...] = () - source_verb: str = "" - evidence_category: str | None = None - ambiguous: bool = False - - def to_json(self) -> dict[str, Any]: - return { - "id": self.id, - "tick": self.tick, - "agent_id": self.agent_id, - "kind": self.kind, - "text": self.text, - "target": self.target, - "required_evidence": list(self.required_evidence), - "source_verb": self.source_verb, - "evidence_category": self.evidence_category, - "ambiguous": self.ambiguous, - } - - -@dataclass(frozen=True) -class ActionEvidence: - """Action trace captured by the observer after physics resolution.""" - - tick: int - agent_id: str - verb: str - parameters: dict[str, Any] = field(default_factory=dict) - success: bool = False - description: str = "" - state_changes: dict[str, Any] = field(default_factory=dict) - events: tuple[str, ...] = () - - def to_json(self) -> dict[str, Any]: - return { - "tick": self.tick, - "agent_id": self.agent_id, - "verb": self.verb, - "parameters": dict(self.parameters), - "success": self.success, - "description": self.description, - "state_changes": dict(self.state_changes), - "events": list(self.events), - } - - -@dataclass(frozen=True) -class StateChangeEvidence: - """A flattened state transition path observed after an action.""" - - tick: int - path: str - before: Any - after: Any - - def to_json(self) -> dict[str, Any]: - return { - "tick": self.tick, - "path": self.path, - "before": self.before, - "after": self.after, - } - - -@dataclass(frozen=True) -class Receipt: - """Verifier verdict for one claim.""" - - claim: Claim - status: ReceiptStatus - label: str - supporting_actions: tuple[ActionEvidence, ...] = () - supporting_state_changes: tuple[StateChangeEvidence, ...] = () - missing_evidence: tuple[str, ...] = () - explanation: str = "" - - @property - def claim_id(self) -> str: - return self.claim.id - - def to_json(self) -> dict[str, Any]: - return { - "claim_id": self.claim.id, - "claim": self.claim.to_json(), - "status": self.status, - "label": self.label, - "supporting_actions": [action.to_json() for action in self.supporting_actions], - "supporting_state_changes": [ - state_change.to_json() - for state_change in self.supporting_state_changes - ], - "missing_evidence": list(self.missing_evidence), - "explanation": self.explanation, - } - - -@dataclass(frozen=True) -class ReceiptReport: - """Run-level receipt report.""" - - run_id: str - receipts: tuple[Receipt, ...] = field(default_factory=tuple) - - @property - def summary(self) -> dict[str, int]: - supported = sum(1 for receipt in self.receipts if receipt.status == "supported") - unsupported = sum(1 for receipt in self.receipts if receipt.status == "unsupported") - unknown = sum(1 for receipt in self.receipts if receipt.status == "unknown") - false_completion_claims = sum( - 1 for receipt in self.receipts if receipt.label == "FalseCompletionClaim" - ) - return { - "supported": supported, - "unsupported": unsupported, - "unknown": unknown, - "false_completion_claims": false_completion_claims, - } - - @property - def failures(self) -> tuple[Receipt, ...]: - return tuple( - receipt - for receipt in self.receipts - if receipt.status == "unsupported" - or (receipt.status == "unknown" and receipt.label == "ReceiptMissing") - ) - - def to_json(self) -> dict[str, Any]: - return { - "run_id": self.run_id, - "summary": self.summary, - "receipts": [receipt.to_json() for receipt in self.receipts], - "failures": [_failure_to_json(receipt) for receipt in self.failures], - } - - -def action_evidence_from_trace(trace: dict[str, Any]) -> ActionEvidence: - """Convert an observer trace dict to typed evidence.""" - return ActionEvidence( - tick=int(trace.get("tick", 0)), - agent_id=str(trace.get("agent_id", "")), - verb=str(trace.get("verb", "")), - parameters=dict(trace.get("parameters", {})), - success=bool(trace.get("success", False)), - description=str(trace.get("description", "")), - state_changes=dict(trace.get("state_changes", {})), - events=tuple(str(event) for event in trace.get("events", [])), - ) - - -def build_receipt_report( - *, - run_id: str, - actions: list[ActionEvidence] | tuple[ActionEvidence, ...], - evidence_window_before: int = 2, - evidence_window_after: int = 5, -) -> ReceiptReport: - """Build a deterministic receipt report from action evidence.""" - action_list = tuple(actions) - claims = _extract_claims(action_list) - receipts = tuple( - _verify_claim( - claim, - action_list, - evidence_window_before=evidence_window_before, - evidence_window_after=evidence_window_after, - ) - for claim in claims - ) - return ReceiptReport(run_id=run_id, receipts=receipts) - - -def render_receipt_markdown(report: ReceiptReport) -> str: - """Render the receipt report as a human-readable autopsy.""" - summary = report.summary - lines = [ - "# Agent Receipt Autopsy", - "", - "## Summary", - "", - f"- Supported: {summary['supported']}", - f"- Unsupported: {summary['unsupported']}", - f"- Unknown: {summary['unknown']}", - f"- False completion claims: {summary['false_completion_claims']}", - "", - "## Unsupported Claims", - "", - ] - unsupported = [receipt for receipt in report.receipts if receipt.status == "unsupported"] - if unsupported: - for receipt in unsupported: - lines.append( - f"- Tick {receipt.claim.tick} agent {receipt.claim.agent_id}: " - f"{receipt.claim.text} [{receipt.label}]" - ) - lines.append(f" Evidence gap: {', '.join(receipt.missing_evidence)}") - else: - lines.append("- None") - lines.extend(["", "## Missing Evidence", ""]) - if report.failures: - for receipt in report.failures: - lines.append( - f"- {receipt.label}: {receipt.claim.text} -> " - f"{', '.join(receipt.missing_evidence)}" - ) - else: - lines.append("- None") - lines.extend(["", "## Supported Receipts", ""]) - supported = [receipt for receipt in report.receipts if receipt.status == "supported"] - if supported: - for receipt in supported: - paths = ", ".join( - state_change.path for state_change in receipt.supporting_state_changes - ) - lines.append( - f"- Tick {receipt.claim.tick} agent {receipt.claim.agent_id}: " - f"{receipt.claim.text} -> {paths}" - ) - else: - lines.append("- None") - lines.append("") - return "\n".join(lines) - - -def _extract_claims(actions: tuple[ActionEvidence, ...]) -> tuple[Claim, ...]: - claims: list[Claim] = [] - for index, action in enumerate(actions, start=1): - verb = _canonical_verb(action.verb) - if verb in _MATERIAL_ACTION_CATEGORIES: - category = _MATERIAL_ACTION_CATEGORIES[verb] - target = _structured_target(verb, action.parameters) - claims.append( - Claim( - id=f"claim-{action.tick}-{action.agent_id}-{index}", - tick=action.tick, - agent_id=action.agent_id, - kind="completion", - text=_structured_claim_text(verb, target), - target=target, - required_evidence=(f"state change for {verb}",), - source_verb=verb, - evidence_category=category, - ) - ) - continue - - if verb not in _SPEECH_VERBS: - continue - message = str(action.parameters.get("message", "")).strip() - if not message: - continue - lowered = message.lower() - if any(term in lowered for term in _AMBIGUOUS_COMPLETION_TERMS): - claims.append( - Claim( - id=f"claim-{action.tick}-{action.agent_id}-{index}", - tick=action.tick, - agent_id=action.agent_id, - kind="completion", - text=message, - required_evidence=("deterministic claim target",), - source_verb=verb, - ambiguous=True, - ) - ) - continue - if any(term in lowered for term in _COMPLETION_TERMS): - claims.append( - Claim( - id=f"claim-{action.tick}-{action.agent_id}-{index}", - tick=action.tick, - agent_id=action.agent_id, - kind="completion", - text=message, - target=_speech_target(lowered), - required_evidence=("state change matching the completion claim",), - source_verb=verb, - evidence_category=_speech_evidence_category(lowered), - ) - ) - return tuple(claims) - - -def _verify_claim( - claim: Claim, - actions: tuple[ActionEvidence, ...], - *, - evidence_window_before: int, - evidence_window_after: int, -) -> Receipt: - if claim.ambiguous: - return Receipt( - claim=claim, - status="unknown", - label="ReceiptMissing", - missing_evidence=("deterministic claim target",), - explanation="The claim is too vague for deterministic state verification.", - ) - - if claim.source_verb in _MATERIAL_ACTION_CATEGORIES: - candidates = [ - action - for action in actions - if action.tick == claim.tick - and action.agent_id == claim.agent_id - and _canonical_verb(action.verb) == claim.source_verb - ] - else: - start = claim.tick - evidence_window_before - end = claim.tick + evidence_window_after - candidates = [ - action - for action in actions - if action.agent_id == claim.agent_id - and start <= action.tick <= end - and _canonical_verb(action.verb) in _MATERIAL_ACTION_CATEGORIES - ] - - supporting_actions: list[ActionEvidence] = [] - supporting_state_changes: list[StateChangeEvidence] = [] - for action in candidates: - category = claim.evidence_category - if category is None: - category = _MATERIAL_ACTION_CATEGORIES.get(_canonical_verb(action.verb)) - changes = tuple(_flatten_state_changes(action.state_changes, tick=action.tick)) - matching = tuple( - change - for change in changes - if category is None or _state_change_matches_category(change, category) - ) - if action.success and matching: - supporting_actions.append(action) - supporting_state_changes.extend(matching) - - if supporting_state_changes: - return Receipt( - claim=claim, - status="supported", - label="ReceiptVerified", - supporting_actions=tuple(supporting_actions), - supporting_state_changes=tuple(supporting_state_changes), - explanation="The claim is backed by matching action and state-change evidence.", - ) - - label = "FalseCompletionClaim" if claim.source_verb in _SPEECH_VERBS else "ReceiptMissing" - return Receipt( - claim=claim, - status="unsupported", - label=label, - supporting_actions=tuple(candidates), - missing_evidence=claim.required_evidence, - explanation="No matching state change was found for this claim.", - ) - - -def _flatten_state_changes( - changes: dict[str, Any], - *, - tick: int, - prefix: str = "", -) -> tuple[StateChangeEvidence, ...]: - flattened: list[StateChangeEvidence] = [] - for raw_key, value in changes.items(): - key = str(raw_key) - path = f"{prefix}.{key}" if prefix else key - if isinstance(value, dict) and {"before", "after"}.issubset(value): - flattened.append( - StateChangeEvidence( - tick=tick, - path=path, - before=value.get("before"), - after=value.get("after"), - ) - ) - elif isinstance(value, dict) and value: - flattened.extend(_flatten_state_changes(value, tick=tick, prefix=path)) - else: - flattened.append( - StateChangeEvidence(tick=tick, path=path, before=None, after=value) - ) - return tuple(flattened) - - -def _state_change_matches_category( - state_change: StateChangeEvidence, - category: str, -) -> bool: - markers = _CATEGORY_EVIDENCE_MARKERS.get(category, ()) - path = state_change.path.lower() - after = str(state_change.after).lower() - before = str(state_change.before).lower() - return any( - marker.lower() in path or marker.lower() in after or marker.lower() in before - for marker in markers - ) - - -def _canonical_verb(verb: str) -> str: - return verb.lower().strip() - - -def _structured_target(verb: str, parameters: dict[str, Any]) -> str | None: - if verb in {"deliver", "ship"}: - return _first_present(parameters, ("request_id", "demand", "item")) - if verb in {"store", "stash", "give", "offer", "hand"}: - return _first_present(parameters, ("item", "target")) - if verb in {"write_artifact", "write_note", "update_artifact", "revise_artifact"}: - return _first_present(parameters, ("artifact_id", "title")) - if verb in {"recruit", "hire"}: - return _first_present(parameters, ("candidate_id", "target")) - if verb == "create_role": - return _first_present(parameters, ("role_name",)) - if verb == "form_team": - return _first_present(parameters, ("team_name",)) - return None - - -def _first_present(parameters: dict[str, Any], keys: tuple[str, ...]) -> str | None: - for key in keys: - value = parameters.get(key) - if value is not None and str(value).strip(): - return str(value) - return None - - -def _structured_claim_text(verb: str, target: str | None) -> str: - if target: - return f"{verb} {target}" - return verb - - -def _speech_target(lowered_message: str) -> str | None: - for marker in ("delivered", "shipped", "stored", "sent", "recruited", "hired"): - if marker in lowered_message: - return marker - if "artifact" in lowered_message or "wrote" in lowered_message or "updated" in lowered_message: - return "artifact" - if "role" in lowered_message: - return "role" - if "team" in lowered_message: - return "team" - return "completion" - - -def _speech_evidence_category(lowered_message: str) -> str | None: - if "delivered" in lowered_message or "shipped" in lowered_message: - return "deliver" - if "stored" in lowered_message: - return "store" - if "handed" in lowered_message or "sent" in lowered_message: - return "give" - if "artifact" in lowered_message or "wrote" in lowered_message or "updated" in lowered_message: - return "artifact" - if "recruited" in lowered_message or "hired" in lowered_message: - return "recruit" - if "role" in lowered_message: - return "role" - if "team" in lowered_message: - return "team" - return None - - -def _failure_to_json(receipt: Receipt) -> dict[str, Any]: - return { - "claim_id": receipt.claim.id, - "tick": receipt.claim.tick, - "agent_id": receipt.claim.agent_id, - "claim": receipt.claim.text, - "status": receipt.status, - "label": receipt.label, - "missing_evidence": list(receipt.missing_evidence), - "explanation": receipt.explanation, - } diff --git a/antelab/engine/space.py b/antelab/engine/space.py deleted file mode 100644 index ab04950..0000000 --- a/antelab/engine/space.py +++ /dev/null @@ -1,140 +0,0 @@ -"""Office space: capacity management, expansion, and crowding pressure.""" - -from __future__ import annotations - -from dataclasses import dataclass, field -from typing import Any - -_SPACE_STAGES = ["garage", "office", "floor", "campus"] - - -@dataclass -class OfficeSpace: - """Office layout state with capacity and expansion tracking.""" - - stage: str = "garage" - capacity: int = 3 - expansion_cost: dict[str, int] = field( - default_factory=lambda: {"office": 50, "floor": 200, "campus": 1000} - ) - capacity_pressure_ticks: int = 3 - stress_per_overcapacity: int = 2 - ticks_over_capacity: int = 0 - layout: dict[str, Any] = field(default_factory=dict) - - def current_capacity(self) -> int: - return self.capacity - - def check_capacity(self, team_size: int) -> bool: - """True if within capacity, False if over.""" - return team_size <= self.capacity - - def occupancy(self, team_size: int) -> tuple[int, int]: - """Returns (current_occupancy, capacity).""" - return team_size, self.capacity - - def apply_capacity_pressure( - self, team_size: int - ) -> dict[str, Any]: - """Check capacity and apply pressure effects. - - Returns a dict with: - over_capacity: bool - stress_delta: int (stress per agent, if over capacity) - expansion_triggered: bool - stage_advanced_to: str or None - """ - result: dict[str, Any] = { - "over_capacity": False, - "stress_delta": 0, - "expansion_triggered": False, - "stage_advanced_to": None, - } - - if team_size <= self.capacity: - self.ticks_over_capacity = 0 - return result - - self.ticks_over_capacity += 1 - result["over_capacity"] = True - result["stress_delta"] = self.stress_per_overcapacity - - return result - - def auto_expand(self, team_size: int, company_cash: int) -> tuple[bool, int]: - """Auto-expand if over capacity for enough ticks and cash available. - - Returns (expanded, cost_deducted). - """ - if team_size <= self.capacity: - return False, 0 - if self.ticks_over_capacity < self.capacity_pressure_ticks: - return False, 0 - - next_stage = self._next_stage() - if next_stage is None: - return False, 0 - - cost = self.expansion_cost.get(next_stage, 0) - if company_cash < cost: - return False, 0 - - self.stage = next_stage - self.capacity = _STAGE_CAPACITY.get(next_stage, self.capacity) - self.ticks_over_capacity = 0 - return True, cost - - def expand(self, target_stage: str | None = None) -> tuple[bool, int]: - """Explicitly expand to the next stage (or a target stage). - - Returns (success, cost_deducted). - """ - stage = target_stage or self._next_stage() - if stage is None: - return False, 0 - if stage not in self.expansion_cost: - return False, 0 - - cost = self.expansion_cost[stage] - self.stage = stage - self.capacity = _STAGE_CAPACITY.get(stage, self.capacity) - self.ticks_over_capacity = 0 - return True, cost - - def _next_stage(self) -> str | None: - stages = _SPACE_STAGES - try: - idx = stages.index(self.stage) - except ValueError: - return None - if idx + 1 < len(stages): - return stages[idx + 1] - return None - - def next_stage_name(self) -> str | None: - return self._next_stage() - - def to_layout(self) -> dict[str, Any]: - """Generate frontend-usable layout data.""" - return { - "stage": self.stage, - "capacity": self.capacity, - "stages": _SPACE_STAGES, - "stage_index": _SPACE_STAGES.index(self.stage) - if self.stage in _SPACE_STAGES else 0, - } - - def to_dict(self) -> dict[str, Any]: - return { - "stage": self.stage, - "capacity": self.capacity, - "ticks_over_capacity": self.ticks_over_capacity, - } - - -_STAGE_CAPACITY: dict[str, int] = { - "garage": 3, - "office": 8, - "floor": 20, - "campus": 50, -} diff --git a/antelab/engine/tick.py b/antelab/engine/tick.py deleted file mode 100644 index 1e20a42..0000000 --- a/antelab/engine/tick.py +++ /dev/null @@ -1,150 +0,0 @@ -"""Tick runner: advances the simulation one step at a time.""" - -from __future__ import annotations - -import asyncio -import logging -from dataclasses import dataclass, field - -from antelab.engine.agent import Agent -from antelab.engine.measurement import ExperimentObserver -from antelab.engine.types import ActionResult -from antelab.engine.world import World -from antelab.llm.client import LLMClient - -logger = logging.getLogger(__name__) - - -@dataclass -class TickResult: - """Summary of what happened during a single tick.""" - - tick: int - results: list[ActionResult] = field(default_factory=list) - - -class TickRunner: - """Orchestrates the perceive-decide-act cycle for all agents.""" - - def __init__( - self, - world: World, - agents: list[Agent], - *, - template_llm: LLMClient | None = None, - ) -> None: - self.world = world - self.agents = agents - self._template_llm = template_llm - self.observer = ExperimentObserver() - - async def run_tick(self) -> TickResult: - """Execute one simulation tick: all agents perceive, decide, and act.""" - tick_result = TickResult(tick=self.world.tick) - self.observer.begin_tick(self.world.tick) - - active_agents = [ - agent - for agent in self.agents - if agent.id in self.world.agents and self.world.agents[agent.id].alive - ] - perceptions = {agent.id: agent.perceive(self.world) for agent in active_agents} - decisions = {} - - async def _decide(a: Agent): - return a, await a.decide(perceptions[a.id]) - - decide_results = await asyncio.gather(*[_decide(a) for a in active_agents]) - for agent, action in decide_results: - decisions[agent.id] = (agent, action) - - resolution_order = sorted(decisions.keys()) - results_by_agent = {} - - for agent_id in resolution_order: - agent, action = decisions[agent_id] - result = self.world.apply_action(action) - results_by_agent[agent_id] = result - tick_result.results.append(result) - self.observer.record_action(action, result) - - logger.debug( - "Tick %d | %s -> %s | %s", - self.world.tick, - agent.name, - action.verb, - result.description, - ) - - for agent_id in resolution_order: - agent, _ = decisions[agent_id] - agent.remember(results_by_agent[agent_id]) - - self.world.advance_tick() - self._materialize_newborn_agents() - self._materialize_recruited_agents() - self.observer.record_locations({ - a_id: a_state.location - for a_id, a_state in self.world.agents.items() - if a_state.alive - }) - self.observer.record_world_state(self.world) - self.observer.end_tick() - return tick_result - - def _materialize_newborn_agents(self) -> None: - births = self.world.consume_pending_births() - if not births: - return - - template_llm = self._template_llm or (self.agents[0].llm if self.agents else None) - if template_llm is None: - return - - memory_size = self.world.axioms.memory_size if hasattr(self.world, "axioms") else 50 - for birth in births: - newborn = Agent.create( - name=birth["name"], - personality="A newborn in this world, driven by local needs and social learning.", - llm=template_llm, - memory_size=memory_size, - ) - newborn.id = birth["id"] - self.world.register_agent( - newborn.id, - newborn.name, - location=birth["location"], - age_ticks=0, - vitality=100, - immune_resilience=50, - stress=0, - contagion_profile={"status": "susceptible", "infectious": False}, - ) - self.agents.append(newborn) - - def _materialize_recruited_agents(self) -> None: - recruits = self.world.consume_pending_recruits() - if not recruits: - return - - template_llm = self._template_llm or (self.agents[0].llm if self.agents else None) - if template_llm is None: - return - - memory_size = self.world.axioms.memory_size if hasattr(self.world, "axioms") else 50 - for recruit in recruits: - agent = Agent.create( - name=recruit["name"], - personality=recruit.get("personality", "A new collaborator in this company."), - llm=template_llm, - memory_size=memory_size, - ) - agent.id = recruit["id"] - self.world.register_agent( - agent.id, - agent.name, - location=recruit.get("location"), - inventory=dict(recruit.get("inventory", {})), - role_claims=[str(claim) for claim in recruit.get("role_claims", [])], - ) - self.agents.append(agent) diff --git a/antelab/engine/types.py b/antelab/engine/types.py deleted file mode 100644 index e8e661a..0000000 --- a/antelab/engine/types.py +++ /dev/null @@ -1,246 +0,0 @@ -"""Core data types for the simulation engine.""" - -from __future__ import annotations - -from dataclasses import dataclass, field -from typing import Any - - -@dataclass(frozen=True) -class Perception: - """What an agent observes about the world at this tick. - - Perception is local (Constitution Art. III): only co-located agents and events. - """ - - tick: int - location: str - nearby_agents: list[str] - nearby_items: list[str] - recent_events: list[str] - inventory: dict[str, int] = field(default_factory=dict) - self_status: dict[str, Any] = field(default_factory=dict) - environment: dict[str, Any] = field(default_factory=dict) - local_resources: dict[str, int] = field(default_factory=dict) - local_features: dict[str, int] = field(default_factory=dict) - company_context: dict[str, Any] = field(default_factory=dict) - recipes_known: dict[str, Any] = field(default_factory=dict) - - -@dataclass(frozen=True) -class Action: - """A free-form intent expressed by an agent (Constitution Art. IV). - - The agent specifies a verb and parameters. The World resolves it - against physical primitives — there is no fixed action menu. - """ - - agent_id: str - verb: str - parameters: dict[str, Any] = field(default_factory=dict) - reasoning: str = "" - - -@dataclass -class ActionResult: - """Outcome after the world resolves an intent against physics.""" - - success: bool - description: str - events: list[str] = field(default_factory=list) - state_changes: dict[str, Any] = field(default_factory=dict) - # Optional hints for passive observers (e.g. peer agent id on give/take). - observer_meta: dict[str, Any] = field(default_factory=dict) - - -@dataclass -class Recipe: - """Resource transformation recipe for craft primitive.""" - - inputs: dict[str, int] = field(default_factory=dict) - outputs: dict[str, int] = field(default_factory=dict) - - -@dataclass -class ExperimentAxioms: - """Tunable physics for civilization experiments.""" - - perception: str = "local" - communication: str = "colocated" - social_tracking: bool = True - auto_eat: bool = False - mortality: bool = True - memory_size: int = 50 - - -@dataclass -class LifecycleParams: - """Deterministic lifecycle and health progression controls.""" - - age_tick_step: int = 1 - life_stage_thresholds: dict[str, int] = field( - default_factory=lambda: { - "juvenile": 20, - "adult": 60, - "elder": 360, - } - ) - vitality_loss_per_tick: int = 1 - vitality_rest_gain: int = 2 - stress_gain_per_tick: int = 1 - stress_rest_reduction: int = 2 - disease_exposure_threshold: int = 3 - disease_vitality_penalty: int = 2 - disease_stress_penalty: int = 1 - disease_recovery_ticks: int = 8 - disease_transmission_base_chance: float = 0.08 - disease_contact_weight: float = 0.22 - disease_exposure_weight: float = 0.1 - disease_resilience_protection_weight: float = 0.5 - disease_need_vulnerability_weight: float = 0.25 - disease_recovery_base_chance: float = 0.05 - disease_recovery_resilience_weight: float = 0.45 - disease_recovery_rest_bonus: float = 0.2 - disease_exposure_decay_per_tick: int = 1 - hunger_gain_per_tick: int = 1 - hunger_rest_reduction: int = 1 - fatigue_gain_per_tick: int = 1 - fatigue_rest_reduction: int = 3 - hunger_vitality_penalty_threshold: int = 70 - fatigue_stress_penalty_threshold: int = 70 - needs_penalty: int = 2 - auto_eat_hunger_threshold: int = 50 - nourishment_gain_per_food: int = 20 - food_items: tuple[str, ...] = ("bread", "apple") - conception_base_chance: float = 0.06 - conception_vitality_weight: float = 0.45 - conception_stress_weight: float = 0.35 - conception_hunger_weight: float = 0.25 - conception_infection_penalty: float = 0.4 - conception_trust_weight: float = 0.15 - conception_obligation_weight: float = 0.08 - conception_min_vitality: int = 55 - conception_max_stress: int = 60 - pregnancy_duration_min_ticks: int = 16 - pregnancy_duration_max_ticks: int = 32 - social_memory_max_entries: int = 64 - - -@dataclass -class PressureRuntime: - """Runtime switches for long-run world pressure systems.""" - - survival_enabled: bool = True - resources_enabled: bool = True - disease_enabled: bool = True - environment_enabled: bool = False - resource_decay_every: int = 0 - resource_regeneration_every: int = 0 - storage_decay_multiplier: float = 0.25 - season_length_ticks: int = 500 - - -@dataclass -class CompanyDemand: - """A physically satisfiable customer request in a company scenario.""" - - request_id: str - description: str = "" - required_item: str = "" - reward: int = 0 - deadline_tick: int = 0 - status: str = "open" # "open" | "delivered" | "missed" - - -@dataclass -class CompanyCandidate: - """A physically available collaborator candidate in a company scenario.""" - - candidate_id: str - name: str - personality: str = "" - location: str = "" - joining_cost: int = 0 - inventory: dict[str, int] = field(default_factory=dict) - role_claims: list[str] = field(default_factory=list) - status: str = "available" # "available" | "joined" - - -@dataclass -class CompanyArtifact: - """An in-world company knowledge object (report, charter, design, etc.).""" - - artifact_id: str - kind: str = "note" - title: str = "" - body: str = "" - created_by: str = "" - updated_by: str = "" - location: str = "" - tick_created: int = 0 - tick_updated: int = 0 - revision: int = 1 - - -@dataclass -class CompanyState: - """Company pressure state for founder-company experiments.""" - - enabled: bool = False - name: str = "" - stage: str = "founder" - cash: int = 0 - operating_cost_per_tick: int = 0 - demand_streams: list[CompanyDemand] = field(default_factory=list) - candidate_pool: list[CompanyCandidate] = field(default_factory=list) - artifacts: list[CompanyArtifact] = field(default_factory=list) - artifact_read_count: int = 0 - artifact_write_count: int = 0 - survival_gauntlet: dict[str, Any] = field(default_factory=dict) - gauntlet_applied_shocks: list[str] = field(default_factory=list) - pending_suggestions: list[dict[str, Any]] = field(default_factory=list) - org: Any = None # OrganizationState — lazy import to avoid circular deps - - def __post_init__(self) -> None: - if self.org is None: - from antelab.engine.org import OrganizationState - self.org = OrganizationState() - - -@dataclass -class EventVisibility: - """Locations where an event was physically observable.""" - - locations: set[str] = field(default_factory=set) - - -@dataclass -class AgentState: - """Public state of an agent as tracked by the world.""" - - id: str - name: str - location: str - inventory: dict[str, int] = field(default_factory=dict) - last_action: str | None = None - age_ticks: int = 0 - life_stage: str = "infant" - vitality: int = 100 - immune_resilience: int = 50 - stress: int = 0 - hunger: int = 0 - fatigue: int = 0 - pregnancy: dict[str, Any] | None = None - alive: bool = True - death_cause: str | None = None - contagion_profile: dict[str, Any] = field( - default_factory=lambda: { - "status": "susceptible", - "infectious": False, - "exposure_count": 0, - "infected_ticks": 0, - } - ) - trust_by_agent: dict[str, float] = field(default_factory=dict) - obligation_by_agent: dict[str, float] = field(default_factory=dict) - role_claims: list[str] = field(default_factory=list) diff --git a/antelab/engine/valuation.py b/antelab/engine/valuation.py deleted file mode 100644 index dc04ca5..0000000 --- a/antelab/engine/valuation.py +++ /dev/null @@ -1,163 +0,0 @@ -"""Valuation model: company worth calculation and IPO condition checks. - -Viewer-only metrics. Agents perceive only cash and customer demands; -valuation and IPO progress are never included in agent perception. -""" - -from __future__ import annotations - -from dataclasses import dataclass, field -from typing import Any - - -@dataclass -class ValuationModel: - """Config-driven company valuation and IPO condition tracker.""" - - # Config (from company.yaml valuation section) - ipo_valuation_target: int = 10_000_000_000 # 10B default - ipo_consecutive_profitable_ticks: int = 5 - ipo_min_team_size: int = 5 - ipo_min_departments: int = 1 - weights: dict[str, float] = field( - default_factory=lambda: { - "cumulative_revenue": 10.0, - "revenue_growth_rate": 100.0, - "team_size": 5.0, - "org_complexity": 2.0, - "demand_completion_rate": 50.0, - "cash_reserve": 2.0, - } - ) - growth_rate_window_ticks: int = 10 - - # Runtime state - current_valuation: float = 0.0 - consecutive_profitable_ticks: int = 0 - ipo_triggered: bool = False - valuation_history: list[dict[str, Any]] = field(default_factory=list) - - # Internal tracking - _revenue_history: list[int] = field(default_factory=list) - _completion_history: list[bool] = field(default_factory=list) - - def calculate( - self, - cumulative_revenue: int, - team_size: int, - department_count: int, - demand_completion_rate: float, - cash_reserve: int, - ) -> float: - """Calculate current valuation using weighted formula. - - Each input metric is normalized to 0-1 before weighting. - revenue_growth_rate is derived from internal revenue history. - org_complexity is derived from department_count. - """ - w = self.weights - - # Normalize each metric to a 0-1 range. - rev_norm = min(1.0, cumulative_revenue / 10000.0) - growth_norm = min(1.0, self._revenue_growth_rate() / 2.0) - team_norm = min(1.0, team_size / 50.0) - org_norm = min(1.0, department_count / 10.0) - completion_norm = max(0.0, min(1.0, demand_completion_rate)) - cash_norm = min(1.0, cash_reserve / 10000.0) - - valuation = ( - w.get("cumulative_revenue", 1.0) * rev_norm - + w.get("revenue_growth_rate", 1.0) * growth_norm - + w.get("team_size", 1.0) * team_norm - + w.get("org_complexity", 1.0) * org_norm - + w.get("demand_completion_rate", 1.0) * completion_norm - + w.get("cash_reserve", 1.0) * cash_norm - ) - return round(valuation, 4) - - def _revenue_growth_rate(self) -> float: - """Compute revenue growth rate from recent history.""" - window = self.growth_rate_window_ticks or 10 - revs = self._revenue_history - if len(revs) < window + 1: - return 0.0 - recent = revs[-window:] - prior = revs[-(window * 2):-window] - if not prior or sum(prior) == 0: - return 0.0 - recent_avg = sum(recent) / len(recent) - prior_avg = sum(prior) / len(prior) - if prior_avg == 0: - return 0.0 - return (recent_avg - prior_avg) / prior_avg - - def record_revenue(self, amount: int) -> None: - """Record revenue from a single delivery.""" - self._revenue_history.append(amount) - - def record_completion(self, completed: bool) -> None: - """Record whether a tick was profitable (delivery rewarded).""" - self._completion_history.append(completed) - - def check_ipo(self, team_size: int, department_count: int) -> bool: - """Check whether IPO conditions are met. Returns True on IPO trigger.""" - if self.ipo_triggered: - return False - if self.current_valuation < self.ipo_valuation_target: - return False - if self.consecutive_profitable_ticks < self.ipo_consecutive_profitable_ticks: - return False - if team_size < self.ipo_min_team_size: - return False - if department_count < self.ipo_min_departments: - return False - self.ipo_triggered = True - return True - - def update( - self, - cumulative_revenue: int, - team_size: int, - department_count: int, - cash_reserve: int, - tick: int, - ) -> dict[str, Any]: - """Run a full valuation update for the current tick. - - Returns a dict with valuation, ipo_triggered, ipo_progress (0-1). - """ - # Demand completion rate from recent completion records. - hist = self._completion_history - completions = hist[-20:] if hist else [] - completion_rate = ( - sum(1 for c in completions if c) / len(completions) if completions else 0.0 - ) - - self.current_valuation = self.calculate( - cumulative_revenue=cumulative_revenue, - team_size=team_size, - department_count=department_count, - demand_completion_rate=completion_rate, - cash_reserve=cash_reserve, - ) - - # Track consecutive profitable ticks (a tick is profitable if revenue - # increased since last check, or if there's positive cash flow). - last_rev = self._revenue_history[-1] if self._revenue_history else 0 - if last_rev > 0: - self.consecutive_profitable_ticks += 1 - else: - self.consecutive_profitable_ticks = 0 - - ipo_now = self.check_ipo(team_size=team_size, department_count=department_count) - progress = min(1.0, self.current_valuation / self.ipo_valuation_target) - - entry = { - "tick": tick, - "valuation": self.current_valuation, - "ipo_triggered": ipo_now, - "ipo_progress": round(progress, 6), - "consecutive_profitable_ticks": self.consecutive_profitable_ticks, - } - self.valuation_history.append(entry) - return entry diff --git a/antelab/engine/world.py b/antelab/engine/world.py deleted file mode 100644 index a7d0c8b..0000000 --- a/antelab/engine/world.py +++ /dev/null @@ -1,2818 +0,0 @@ -"""World: the shared physical substrate of the simulation. - -The World is a physics engine (Constitution Art. IV, IX). -It resolves free-form agent intents against physical primitives. -It never makes moral judgments — only checks physical possibility. -""" - -from __future__ import annotations - -import random -import re -import uuid -from collections.abc import Iterable -from dataclasses import dataclass, field -from typing import Any - -from antelab.engine.market import MarketState -from antelab.engine.pattern import PatternDetector -from antelab.engine.space import OfficeSpace -from antelab.engine.types import ( - Action, - ActionResult, - AgentState, - CompanyArtifact, - CompanyCandidate, - CompanyDemand, - CompanyState, - EventVisibility, - ExperimentAxioms, - LifecycleParams, - PressureRuntime, - Recipe, -) -from antelab.engine.valuation import ValuationModel - - -@dataclass -class World: - """Holds all simulation state and resolves actions against physics.""" - - name: str - tick: int = 0 - locations: list[str] = field(default_factory=list) - location_graph: dict[str, list[str]] = field(default_factory=dict) - agents: dict[str, AgentState] = field(default_factory=dict) - event_log: list[str] = field(default_factory=list) - location_items: dict[str, dict[str, int]] = field(default_factory=dict) - location_features: dict[str, dict[str, int]] = field(default_factory=dict) - resource_zones: dict[str, dict[str, dict[str, int]]] = field(default_factory=dict) - recipes: dict[str, Recipe] = field(default_factory=dict) - company: CompanyState | dict[str, Any] | None = None - market: MarketState | None = None - pattern_detector: PatternDetector | None = None - valuation: ValuationModel | None = None - office_space: OfficeSpace | None = None - event_log_limit: int = 2000 - lifecycle: LifecycleParams = field(default_factory=LifecycleParams) - axioms: ExperimentAxioms = field(default_factory=ExperimentAxioms) - pressure: PressureRuntime | dict[str, Any] = field(default_factory=PressureRuntime) - environment: dict[str, Any] = field( - default_factory=lambda: { - "season": "spring", - "weather": "clear", - "disaster": None, - } - ) - pending_births: list[dict[str, str]] = field(default_factory=list) - pending_recruits: list[dict[str, Any]] = field(default_factory=list) - total_births: int = 0 - total_deaths: int = 0 - # location -> agent ids at that location (alive agents only; updated on register/move/death) - _location_index: dict[str, set[str]] = field(default_factory=dict, repr=False, init=False) - # Cache (global perception): rebuilt when world.tick changes - _alive_pairs_tick: int | None = field(default=None, repr=False, init=False) - _alive_pairs: list[tuple[str, str]] = field(default_factory=list, repr=False, init=False) - _event_meta: list[EventVisibility] = field(default_factory=list, repr=False, init=False) - - def __post_init__(self) -> None: - self.event_log_limit = max(1, int(self.event_log_limit)) - if isinstance(self.pressure, dict): - resources = self.pressure.get("resources", {}) - environment = self.pressure.get("environment", {}) - self.pressure = PressureRuntime( - survival_enabled=bool( - self.pressure.get("survival", {}).get("enabled", True) - ), - resources_enabled=bool(resources.get("enabled", True)), - disease_enabled=bool( - self.pressure.get("disease", {}).get("enabled", True) - ), - environment_enabled=bool(environment.get("enabled", False)), - resource_decay_every=int(resources.get("decay_every", 0)), - resource_regeneration_every=int( - resources.get("regeneration_every", 0) - ), - storage_decay_multiplier=float( - resources.get("storage_decay_multiplier", 0.25) - ), - season_length_ticks=int(environment.get("season_length_ticks", 500)), - ) - if self.company is None: - self.company = CompanyState() - elif isinstance(self.company, dict): - self.company = CompanyState( - enabled=bool(self.company.get("enabled", False)), - name=str(self.company.get("name", "")), - stage=str(self.company.get("stage", "founder")), - cash=max(0, int(self.company.get("cash", 0))), - operating_cost_per_tick=max( - 0, int(self.company.get("operating_cost_per_tick", 0)) - ), - demand_streams=[ - CompanyDemand( - request_id=str(raw.get("request_id", "")), - description=str(raw.get("description", "")), - required_item=str(raw.get("required_item", "")), - reward=max(0, int(raw.get("reward", 0))), - deadline_tick=max(0, int(raw.get("deadline_tick", 0))), - status=str(raw.get("status", "open")), - ) - for raw in self.company.get("demand_streams", []) - if isinstance(raw, dict) - ], - candidate_pool=[ - CompanyCandidate( - candidate_id=str(raw.get("candidate_id", "")), - name=str(raw.get("name", "")), - personality=str(raw.get("personality", "")), - location=str(raw.get("location", "")), - joining_cost=max(0, int(raw.get("joining_cost", 0))), - inventory={ - str(item): int(qty) - for item, qty in dict(raw.get("inventory", {})).items() - }, - role_claims=[ - str(claim) for claim in raw.get("role_claims", []) - ], - status=str(raw.get("status", "available")), - ) - for raw in self.company.get("candidate_pool", []) - if isinstance(raw, dict) - ], - artifacts=[ - CompanyArtifact( - artifact_id=str(raw.get("artifact_id", "")), - kind=str(raw.get("kind", "note")), - title=str(raw.get("title", "")), - body=str(raw.get("body", "")), - created_by=str(raw.get("created_by", "")), - updated_by=str(raw.get("updated_by", "")), - location=str(raw.get("location", "")), - tick_created=int(raw.get("tick_created", 0)), - tick_updated=int(raw.get("tick_updated", 0)), - revision=max(1, int(raw.get("revision", 1))), - ) - for raw in self.company.get("artifacts", []) - if isinstance(raw, dict) - ], - artifact_read_count=max(0, int(self.company.get("artifact_read_count", 0))), - artifact_write_count=max(0, int(self.company.get("artifact_write_count", 0))), - survival_gauntlet=dict(self.company.get("survival_gauntlet", {})), - gauntlet_applied_shocks=[ - str(shock_id) - for shock_id in self.company.get("gauntlet_applied_shocks", []) - ], - ) - # Initialize new company emergence modules from embedded config. - self._init_emergence_modules() - if not self.location_graph: - self.location_graph = { - location: [other for other in self.locations if other != location] - for location in self.locations - } - else: - normalized: dict[str, list[str]] = {} - known_locations = set(self.locations) - for location in self.locations: - raw_neighbors = self.location_graph.get(location, []) - neighbors = [ - neighbor - for neighbor in raw_neighbors - if neighbor in known_locations and neighbor != location - ] - normalized[location] = list(dict.fromkeys(neighbors)) - self.location_graph = normalized - - normalized_recipes: dict[str, Recipe] = {} - for name, recipe in self.recipes.items(): - if isinstance(recipe, Recipe): - normalized_recipes[name] = recipe - continue - if isinstance(recipe, dict): - normalized_recipes[name] = Recipe( - inputs=dict(recipe.get("inputs", {})), - outputs=dict(recipe.get("outputs", {})), - ) - self.recipes = normalized_recipes - - def _init_emergence_modules(self) -> None: - """Initialize company emergence modules from embedded config or defaults.""" - company = self.company - if not isinstance(company, CompanyState) or not company.enabled: - return - - # Extract raw config dict if available (before normalization). - raw_company: dict[str, Any] = {} - market_raw = raw_company.get("market", {}) - pattern_raw = raw_company.get("pattern", {}) - valuation_raw = raw_company.get("valuation", {}) - space_raw = raw_company.get("space", {}) - - self.market = MarketState( - demand_difficulty_by_stage={ - str(k): int(v) for k, v in market_raw.get( - "demand_difficulty_by_stage", - MarketState().demand_difficulty_by_stage, - ).items() - }, - max_open_demands=int(market_raw.get("max_open_demands", 5)), - demand_generation_every=int(market_raw.get("demand_generation_every", 3)), - reward_base={ - str(k): int(v) for k, v in market_raw.get( - "reward_base", MarketState().reward_base, - ).items() - }, - reward_spread=float(market_raw.get("reward_spread", 0.5)), - deadline_ticks_base={ - str(k): int(v) for k, v in market_raw.get( - "deadline_ticks_base", MarketState().deadline_ticks_base, - ).items() - }, - shock_pool={ - str(k): [dict(s) for s in v] - for k, v in market_raw.get("shocks", {}).items() - if isinstance(v, list) - }, - ) - - self.pattern_detector = PatternDetector( - window_ticks=int(pattern_raw.get("window_ticks", 20)), - threshold=int(pattern_raw.get("threshold", 5)), - suggestion_expiry_ticks=int(pattern_raw.get("suggestion_expiry_ticks", 5)), - ) - - self.valuation = ValuationModel( - ipo_valuation_target=int( - valuation_raw.get("ipo_valuation_target", 10_000_000_000) - ), - ipo_consecutive_profitable_ticks=int( - valuation_raw.get("ipo_consecutive_profitable_ticks", 5) - ), - ipo_min_team_size=int(valuation_raw.get("ipo_min_team_size", 5)), - ipo_min_departments=int(valuation_raw.get("ipo_min_departments", 1)), - weights={ - str(k): float(v) - for k, v in valuation_raw.get("weights", {}).items() - }, - growth_rate_window_ticks=int( - valuation_raw.get("growth_rate_window_ticks", 10) - ), - ) - - cap = { - str(k): int(v) - for k, v in space_raw.get( - "capacity_by_stage", OfficeSpace().expansion_cost, - ).items() - } - self.office_space = OfficeSpace( - stage=str(space_raw.get("stage", "garage")), - capacity=int(space_raw.get("capacity", cap.get("garage", 3))), - expansion_cost={ - str(k): int(v) - for k, v in space_raw.get( - "expansion_cost_by_stage", OfficeSpace().expansion_cost, - ).items() - }, - capacity_pressure_ticks=int(space_raw.get("capacity_pressure_ticks", 3)), - stress_per_overcapacity=int(space_raw.get("stress_per_overcapacity", 2)), - ) - - def _location_index_add(self, agent_id: str, location: str) -> None: - self._location_index.setdefault(location, set()).add(agent_id) - - def _location_index_remove(self, agent_id: str, location: str) -> None: - bucket = self._location_index.get(location) - if not bucket: - return - bucket.discard(agent_id) - if not bucket: - del self._location_index[location] - - def _location_index_move(self, agent_id: str, old_loc: str, new_loc: str) -> None: - if old_loc == new_loc: - return - self._location_index_remove(agent_id, old_loc) - self._location_index_add(agent_id, new_loc) - - def _sync_alive_pair_cache(self) -> None: - if self._alive_pairs_tick == self.tick: - return - self._alive_pairs_tick = self.tick - self._alive_pairs = [ - (a.id, a.name) - for a in sorted(self.agents.values(), key=lambda s: s.id) - if a.alive - ] - - def register_agent( - self, - agent_id: str, - name: str, - location: str | None = None, - inventory: dict[str, int] | None = None, - age_ticks: int = 0, - vitality: int = 100, - immune_resilience: int = 50, - stress: int = 0, - hunger: int = 0, - fatigue: int = 0, - pregnancy: dict[str, Any] | None = None, - contagion_profile: dict[str, Any] | None = None, - role_claims: list[str] | None = None, - alive: bool = True, - ) -> None: - """Add an agent to the world.""" - loc = location or (self.locations[0] if self.locations else "unknown") - profile = { - "status": "susceptible", - "infectious": False, - "exposure_count": 0, - "infected_ticks": 0, - } - if contagion_profile is not None: - profile.update(contagion_profile) - prior = self.agents.get(agent_id) - if prior is not None: - self._location_index_remove(agent_id, prior.location) - self.agents[agent_id] = AgentState( - id=agent_id, - name=name, - location=loc, - inventory=inventory or {}, - age_ticks=age_ticks, - life_stage=self._life_stage_for_age(age_ticks), - vitality=max(0, min(100, vitality)), - immune_resilience=max(0, min(100, immune_resilience)), - stress=max(0, min(100, stress)), - hunger=max(0, min(100, hunger)), - fatigue=max(0, min(100, fatigue)), - pregnancy=dict(pregnancy) if pregnancy else None, - contagion_profile=profile, - role_claims=list(role_claims or []), - alive=alive, - ) - if alive: - self._location_index_add(agent_id, loc) - - def get_nearby_agents(self, agent_id: str) -> list[str]: - """Return names of agents visible to this agent. - - Respects the perception axiom: "local" restricts to co-located agents, - "global" exposes all living agents regardless of location. - """ - agent = self.agents.get(agent_id) - if not agent or not agent.alive: - return [] - if self.axioms.perception == "global": - self._sync_alive_pair_cache() - return [name for aid, name in self._alive_pairs if aid != agent_id] - names: list[str] = [] - for peer_id in sorted(self._location_index.get(agent.location, ())): - if peer_id == agent_id: - continue - peer = self.agents.get(peer_id) - if peer and peer.alive: - names.append(peer.name) - return names - - def get_nearby_items(self, agent_id: str) -> list[str]: - """Return items at the agent's current location.""" - agent = self.agents.get(agent_id) - if not agent or not agent.alive: - return [] - items = self.location_items.get(agent.location, {}) - return [f"{name}x{qty}" for name, qty in items.items() if qty > 0] - - def get_recent_events(self, n: int = 10, location: str | None = None) -> list[str]: - """Return the last N events.""" - if location is None: - return self.event_log[-n:] - - recent_events = self.event_log[-n:] - recent_meta = self._aligned_event_meta()[-n:] - return [ - event - for event, meta in zip(recent_events, recent_meta, strict=False) - if location in meta.locations - ] - - # --- Physics engine: resolve free-form intents --- - - def apply_action(self, action: Action) -> ActionResult: - """Resolve a free-form agent intent against physical primitives. - - Maps the verb to a physical primitive. Unknown verbs are not rejected - as "invalid" — they're rejected as "physically impossible" if they - don't correspond to anything the physics engine can execute. - """ - agent = self.agents.get(action.agent_id) - if not agent: - return ActionResult( - success=False, - description=f"Unknown agent: {action.agent_id}", - ) - if not agent.alive: - return ActionResult( - success=False, - description=f"{agent.name} is dead and cannot act", - ) - - verb = action.verb.lower().strip() - - # Track action for pattern detection (company emergence). - if self.pattern_detector is not None: - self.pattern_detector.track_action_at_tick( - action.agent_id, self.tick, verb, action.parameters, - ) - - resolver = _PRIMITIVES.get(verb) - if resolver is not None: - result = resolver(self, agent, action) - # Track delivery revenues for valuation. - if result.success and self.valuation is not None and verb in ("deliver", "ship"): - params = action.parameters or {} - demand_id = params.get("request_id", "") - demand = self._find_open_company_demand(str(demand_id)) - reward = demand.reward if demand else 0 - if reward: - self.valuation.record_revenue(reward) - self.valuation.record_completion(True) - elif result.success and self.valuation is not None: - self.valuation.record_completion(False) - return result - - return self._resolve_unknown(agent, action) - - def advance_tick(self) -> None: - """Move the simulation forward by one tick.""" - self._apply_lifecycle_updates() - self._trim_event_log() - self.tick += 1 - self._apply_company_gauntlet_shocks() - self._apply_company_pressure() - self._apply_market_update() - self._apply_pattern_detection() - self._apply_space_pressure() - self._apply_valuation_update() - self._apply_resource_decay() - self._apply_resource_regeneration() - self._apply_environment_updates() - - def to_dict(self) -> dict[str, Any]: - """Serialize world state for API responses.""" - alive_agents = [a for a in self.agents.values() if a.alive] - infected_agents = [ - a for a in alive_agents if bool(a.contagion_profile.get("infectious", False)) - ] - age_distribution = { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0, - } - total_hunger = 0.0 - total_fatigue = 0.0 - for agent in alive_agents: - age_distribution[agent.life_stage] = age_distribution.get(agent.life_stage, 0) + 1 - total_hunger += agent.hunger - total_fatigue += agent.fatigue - n_alive = len(alive_agents) - avg_hunger = total_hunger / n_alive if n_alive else 0.0 - avg_fatigue = total_fatigue / n_alive if n_alive else 0.0 - event_log = [ - { - "event": event, - "visibility": {"locations": sorted(meta.locations)}, - } - for event, meta in zip( - self.event_log, - self._aligned_event_meta(), - strict=False, - ) - ] - - company_summary = self._company_summary() - return { - "name": self.name, - "tick": self.tick, - "locations": self.locations, - "location_graph": self.location_graph, - "location_items": self.location_items, - "location_features": self.location_features, - "resource_zones": self.resource_zones, - "environment": dict(self.environment), - "event_log_limit": self.event_log_limit, - "experiment": { - "perception": self.axioms.perception, - "communication": self.axioms.communication, - "social_tracking": self.axioms.social_tracking, - "auto_eat": self.axioms.auto_eat, - "mortality": self.axioms.mortality, - "memory_size": self.axioms.memory_size, - }, - "pressure": { - "survival": { - "enabled": self.pressure.survival_enabled, - }, - "resources": { - "enabled": self.pressure.resources_enabled, - "decay_every": self.pressure.resource_decay_every, - "regeneration_every": self.pressure.resource_regeneration_every, - "storage_decay_multiplier": self.pressure.storage_decay_multiplier, - }, - "disease": { - "enabled": self.pressure.disease_enabled, - }, - "environment": { - "enabled": self.pressure.environment_enabled, - "season_length_ticks": self.pressure.season_length_ticks, - }, - }, - "metrics": { - "alive_count": len(alive_agents), - "total_births": self.total_births, - "total_deaths": self.total_deaths, - "birth_rate": self.total_births / max(1, self.tick + 1), - "death_rate": self.total_deaths / max(1, self.tick + 1), - "age_distribution": age_distribution, - "active_outbreak_estimate": len(infected_agents), - "average_hunger": avg_hunger, - "average_fatigue": avg_fatigue, - }, - "company": company_summary, - "recipes": { - name: { - "inputs": recipe.inputs, - "outputs": recipe.outputs, - } - for name, recipe in self.recipes.items() - }, - "agents": [ - { - "id": a.id, - "name": a.name, - "location": a.location, - "inventory": a.inventory, - "last_action": a.last_action, - "age_ticks": a.age_ticks, - "life_stage": a.life_stage, - "vitality": a.vitality, - "immune_resilience": a.immune_resilience, - "stress": a.stress, - "hunger": a.hunger, - "fatigue": a.fatigue, - "pregnancy": a.pregnancy, - "alive": a.alive, - "death_cause": a.death_cause, - "contagion_profile": a.contagion_profile, - "role_claims": list(a.role_claims), - } - for a in self.agents.values() - ], - "event_log": event_log, - "recent_events": self.get_recent_events(), - } - - # --- Physical primitives --- - - def _resolve_move(self, agent: AgentState, action: Action) -> ActionResult: - destination = action.parameters.get("destination", "") - if destination not in self.locations: - return ActionResult( - success=False, - description=f"{agent.name} cannot move to '{destination}' — no such place", - ) - if not self._is_adjacent(agent.location, destination): - return ActionResult( - success=False, - description=( - f"{agent.name} cannot move from {agent.location} to {destination} " - "— destination is not adjacent" - ), - ) - old = agent.location - agent.location = destination - self._location_index_move(agent.id, old, destination) - event = f"[Tick {self.tick}] {agent.name} moved from {old} to {destination}" - self._append_event(event, locations=[old, destination]) - agent.last_action = f"moved to {destination}" - return ActionResult( - success=True, description=event, events=[event], - state_changes={"location": destination}, - ) - - def _resolve_say(self, agent: AgentState, action: Action) -> ActionResult: - if self.axioms.communication == "silent": - event = ( - f"[Tick {self.tick}] {agent.name} tried to speak " - f"— communication is not possible in this world" - ) - self._append_event(event, location=agent.location) - agent.last_action = "attempted: say (silent world)" - return ActionResult(success=False, description=event, events=[event]) - message = action.parameters.get("message", "...") - event = f'[Tick {self.tick}] {agent.name} says: "{message}"' - self._append_event(event, location=agent.location) - agent.last_action = f"said: {message}" - return ActionResult(success=True, description=event, events=[event]) - - def _resolve_give(self, agent: AgentState, action: Action) -> ActionResult: - target_name = action.parameters.get("target", "") - item = action.parameters.get("item", "") - qty = int(action.parameters.get("quantity", 1)) - - target = self._find_agent_by_name(target_name, agent.location) - if target is None: - return ActionResult( - success=False, - description=f"{agent.name} cannot give to '{target_name}' — not present", - ) - if agent.inventory.get(item, 0) < qty: - return ActionResult( - success=False, - description=f"{agent.name} does not have {qty} {item} to give", - ) - - source_before = agent.inventory.get(item, 0) - target_before = target.inventory.get(item, 0) - agent.inventory[item] = agent.inventory.get(item, 0) - qty - target.inventory[item] = target.inventory.get(item, 0) + qty - if self.axioms.social_tracking: - agent.trust_by_agent[target.id] = agent.trust_by_agent.get(target.id, 0.0) + 0.05 - target.obligation_by_agent[agent.id] = ( - target.obligation_by_agent.get(agent.id, 0.0) + (0.1 * qty) - ) - event = f"[Tick {self.tick}] {agent.name} gave {qty} {item} to {target.name}" - self._append_event(event, location=agent.location) - agent.last_action = f"gave {qty} {item} to {target.name}" - return ActionResult( - success=True, - description=event, - events=[event], - observer_meta={ - "peer_agent_id": target.id, - "item": item, - "quantity": qty, - }, - state_changes={ - f"agent_inventory.{agent.id}.{item}": { - "before": source_before, - "after": agent.inventory.get(item, 0), - }, - f"agent_inventory.{target.id}.{item}": { - "before": target_before, - "after": target.inventory.get(item, 0), - }, - }, - ) - - def _resolve_take(self, agent: AgentState, action: Action) -> ActionResult: - source_name = action.parameters.get("target", action.parameters.get("source", "")) - item = action.parameters.get("item", "") - qty = int(action.parameters.get("quantity", 1)) - - source = self._find_agent_by_name(source_name, agent.location) - if source is not None: - if source.inventory.get(item, 0) < qty: - return ActionResult( - success=False, - description=f"{source.name} does not have {qty} {item}", - ) - source_before = source.inventory.get(item, 0) - agent_before = agent.inventory.get(item, 0) - source.inventory[item] = source.inventory.get(item, 0) - qty - agent.inventory[item] = agent.inventory.get(item, 0) + qty - if self.axioms.social_tracking: - source.trust_by_agent[agent.id] = source.trust_by_agent.get(agent.id, 0.0) - ( - 0.08 * qty - ) - agent.obligation_by_agent[source.id] = ( - agent.obligation_by_agent.get(source.id, 0.0) + (0.15 * qty) - ) - event = f"[Tick {self.tick}] {agent.name} took {qty} {item} from {source.name}" - self._append_event(event, location=agent.location) - agent.last_action = f"took {qty} {item} from {source.name}" - return ActionResult( - success=True, - description=event, - events=[event], - observer_meta={ - "peer_agent_id": source.id, - "item": item, - "quantity": qty, - }, - state_changes={ - f"agent_inventory.{source.id}.{item}": { - "before": source_before, - "after": source.inventory.get(item, 0), - }, - f"agent_inventory.{agent.id}.{item}": { - "before": agent_before, - "after": agent.inventory.get(item, 0), - }, - }, - ) - - loc_items = self.location_items.get(agent.location, {}) - if loc_items.get(item, 0) >= qty: - location_before = loc_items.get(item, 0) - agent_before = agent.inventory.get(item, 0) - loc_items[item] = loc_items.get(item, 0) - qty - agent.inventory[item] = agent.inventory.get(item, 0) + qty - event = f"[Tick {self.tick}] {agent.name} picked up {qty} {item}" - self._append_event(event, location=agent.location) - agent.last_action = f"picked up {qty} {item}" - return ActionResult( - success=True, - description=event, - events=[event], - state_changes={ - f"location_items.{agent.location}.{item}": { - "before": location_before, - "after": loc_items.get(item, 0), - }, - f"agent_inventory.{agent.id}.{item}": { - "before": agent_before, - "after": agent.inventory.get(item, 0), - }, - }, - ) - - return ActionResult( - success=False, - description=f"{agent.name} cannot take {qty} {item} — not available here", - ) - - def _resolve_harvest(self, agent: AgentState, action: Action) -> ActionResult: - resource = str( - action.parameters.get("resource") or action.parameters.get("item") or "" - ).strip() - raw_quantity = action.parameters.get("quantity", 1) - try: - if isinstance(raw_quantity, bool): - raise ValueError - if isinstance(raw_quantity, int): - quantity = raw_quantity - elif isinstance(raw_quantity, str): - quantity = int(raw_quantity.strip()) - else: - quantity = int(raw_quantity) - if quantity != raw_quantity: - raise ValueError - except (TypeError, ValueError): - return ActionResult(False, "Harvest failed: invalid quantity.") - if quantity < 1: - return ActionResult(False, "Harvest failed: quantity must be positive.") - bucket = self.location_items.get(agent.location, {}) - if not resource or bucket.get(resource, 0) < quantity: - return ActionResult( - False, - f"Harvest failed: not enough {resource} at {agent.location}.", - ) - bucket[resource] -= quantity - if bucket[resource] <= 0: - del bucket[resource] - agent.inventory[resource] = agent.inventory.get(resource, 0) + quantity - event = ( - f"[Tick {self.tick}] {agent.name} harvested " - f"{quantity} {resource} at {agent.location}." - ) - self._append_event(event, location=agent.location) - agent.last_action = f"harvested {quantity} {resource} at {agent.location}" - return ActionResult( - True, - event, - events=[event], - state_changes={"harvested": {resource: quantity}}, - ) - - def _resolve_store(self, agent: AgentState, action: Action) -> ActionResult: - item = str(action.parameters.get("item", "")).strip() - raw_quantity = action.parameters.get("quantity", 1) - try: - if isinstance(raw_quantity, bool): - raise ValueError - if isinstance(raw_quantity, int): - quantity = raw_quantity - elif isinstance(raw_quantity, str): - quantity = int(raw_quantity.strip()) - else: - quantity = int(raw_quantity) - if quantity != raw_quantity: - raise ValueError - except (TypeError, ValueError): - return ActionResult(False, "Store failed: invalid quantity.") - if not item: - return ActionResult(False, "Store failed: missing item.") - if quantity < 1: - return ActionResult(False, "Store failed: quantity must be positive.") - if agent.inventory.get(item, 0) < quantity: - return ActionResult( - False, - f"Store failed: {agent.name} does not have enough {item}.", - ) - agent_before = agent.inventory.get(item, 0) - agent.inventory[item] -= quantity - if agent.inventory[item] <= 0: - del agent.inventory[item] - stored_item = f"stored:{item}" - bucket = self.location_items.setdefault(agent.location, {}) - stored_before = bucket.get(stored_item, 0) - bucket[stored_item] = bucket.get(stored_item, 0) + quantity - event = f"[Tick {self.tick}] {agent.name} stored {quantity} {item} at {agent.location}" - self._append_event(event, location=agent.location) - agent.last_action = f"stored {quantity} {item} at {agent.location}" - return ActionResult( - True, - event, - events=[event], - state_changes={ - "stored": {stored_item: quantity}, - f"agent_inventory.{agent.id}.{item}": { - "before": agent_before, - "after": agent.inventory.get(item, 0), - }, - f"location_items.{agent.location}.{stored_item}": { - "before": stored_before, - "after": bucket.get(stored_item, 0), - }, - }, - ) - - def _resolve_build_shelter(self, agent: AgentState, action: Action) -> ActionResult: - materials = action.parameters.get("materials", {"wood": 2}) - if not isinstance(materials, dict): - return ActionResult(False, "Build shelter failed: materials must be a mapping.") - if not materials: - return ActionResult(False, "Build shelter failed: materials must not be empty.") - - required_materials: dict[str, int] = {} - for item, qty_raw in materials.items(): - item_name = str(item).strip() - if not item_name: - return ActionResult(False, "Build shelter failed: missing material name.") - try: - if isinstance(qty_raw, bool): - raise ValueError - if isinstance(qty_raw, int): - qty = qty_raw - elif isinstance(qty_raw, str): - qty = int(qty_raw.strip()) - else: - qty = int(qty_raw) - if qty != qty_raw: - raise ValueError - except (TypeError, ValueError): - return ActionResult( - False, - f"Build shelter failed: invalid quantity for {item_name}.", - ) - if qty < 1: - return ActionResult( - False, - f"Build shelter failed: quantity for {item_name} must be positive.", - ) - required_materials[item_name] = qty - - for item, qty in required_materials.items(): - if agent.inventory.get(item, 0) < qty: - return ActionResult(False, f"Build shelter failed: missing {item}.") - - for item, qty in required_materials.items(): - agent.inventory[item] -= qty - if agent.inventory[item] <= 0: - del agent.inventory[item] - features = self.location_features.setdefault(agent.location, {}) - features["shelter"] = features.get("shelter", 0) + 1 - event = f"[Tick {self.tick}] {agent.name} built shelter at {agent.location}." - self._append_event(event, location=agent.location) - agent.last_action = f"built shelter at {agent.location}" - return ActionResult( - True, - event, - events=[event], - state_changes={"location_features": features}, - ) - - def _resolve_consume(self, agent: AgentState, action: Action) -> ActionResult: - item = str(action.parameters.get("item", "")).strip() - raw_quantity = action.parameters.get("quantity", 1) - try: - if isinstance(raw_quantity, bool): - raise ValueError - if isinstance(raw_quantity, int): - quantity = raw_quantity - elif isinstance(raw_quantity, str): - quantity = int(raw_quantity.strip()) - else: - quantity = int(raw_quantity) - if quantity != raw_quantity: - raise ValueError - except (TypeError, ValueError): - return ActionResult(False, "Consume failed: invalid quantity.") - if not item: - return ActionResult(False, "Consume failed: missing item.") - if quantity < 1: - return ActionResult(False, "Consume failed: quantity must be positive.") - if item not in self.lifecycle.food_items: - return ActionResult(False, f"Consume failed: {item} is not food.") - if agent.inventory.get(item, 0) < quantity: - return ActionResult( - False, - f"Consume failed: {agent.name} does not have enough {item}.", - ) - agent.inventory[item] -= quantity - if agent.inventory[item] <= 0: - del agent.inventory[item] - nourishment = self.lifecycle.nourishment_gain_per_food * quantity - agent.hunger = max(0, agent.hunger - nourishment) - event = f"[Tick {self.tick}] {agent.name} consumed {quantity} {item}." - self._append_event(event, location=agent.location) - agent.last_action = f"consumed {quantity} {item}" - return ActionResult( - True, - event, - events=[event], - state_changes={"hunger": agent.hunger}, - ) - - def _resolve_treat(self, agent: AgentState, action: Action) -> ActionResult: - target_name = str(action.parameters.get("target", "")).strip() - item = str(action.parameters.get("item", "")).strip() - if not item: - return ActionResult(False, "Treat failed: missing treatment item.") - if item != "medicine": - return ActionResult(False, f"Treat failed: {item} is not a treatment item.") - target = self._find_agent_by_name(target_name, agent.location) - if target is None: - return ActionResult(False, f"Treat failed: target {target_name} is not present.") - if agent.inventory.get(item, 0) < 1: - return ActionResult(False, f"Treat failed: {agent.name} lacks {item}.") - - agent.inventory[item] -= 1 - if agent.inventory[item] <= 0: - del agent.inventory[item] - profile = target.contagion_profile - profile["infected_ticks"] = max(0, int(profile.get("infected_ticks", 0)) - 2) - target.stress = max(0, target.stress - 5) - event = f"[Tick {self.tick}] {agent.name} treated {target.name} with {item}." - self._append_event(event, location=agent.location) - agent.last_action = f"treated {target.name} with {item}" - return ActionResult( - True, - event, - events=[event], - observer_meta={"peer_agent_id": target.id, "care_event": True}, - ) - - def _resolve_reproduce(self, agent: AgentState, action: Action) -> ActionResult: - target_name = str(action.parameters.get("target", "")).strip() - target = self._find_agent_by_name(target_name, agent.location) - if target is None: - return ActionResult( - False, - f"Reproduce failed: target {target_name} is not present.", - ) - if target.id == agent.id: - return ActionResult(False, "Reproduce failed: target cannot be self.") - - for participant in (agent, target): - blocker = self._conception_blocker(participant) - if blocker is not None: - return ActionResult(False, f"Reproduce failed: {blocker}.") - - if agent.pregnancy is not None: - return ActionResult( - False, - f"Reproduce failed: {agent.name} is already pregnant.", - ) - - chance = self._conception_chance(agent, target) - if random.random() >= chance: - event = ( - f"[Tick {self.tick}] {agent.name} and {target.name} attempted " - "reproduction; it did not result in pregnancy." - ) - self._append_event(event, location=agent.location) - agent.last_action = f"attempted reproduction with {target.name}" - return ActionResult( - True, - event, - events=[event], - observer_meta={"peer_agent_id": target.id}, - ) - - event = self._start_pregnancy(agent, target) - agent.last_action = f"started pregnancy with {target.name}" - return ActionResult( - True, - event, - events=[event], - state_changes={"pregnancy": agent.pregnancy}, - observer_meta={"peer_agent_id": target.id}, - ) - - def _resolve_examine(self, agent: AgentState, action: Action) -> ActionResult: - target_name = action.parameters.get("target", "") - target = self._find_agent_by_name(target_name, agent.location) - if target is not None: - info = ( - f"name={target.name}, location={target.location}, " - f"last_action={target.last_action}" - ) - event = f"[Tick {self.tick}] {agent.name} examined {target.name}: {info}" - self._append_event(event, location=agent.location) - agent.last_action = f"examined {target.name}" - return ActionResult( - success=True, description=event, events=[event], - state_changes={"observed": info}, - ) - return ActionResult( - success=False, - description=f"{agent.name} cannot examine '{target_name}' — not present", - ) - - def _resolve_rest(self, agent: AgentState, action: Action) -> ActionResult: - event = f"[Tick {self.tick}] {agent.name} rests" - self._append_event(event, location=agent.location) - agent.last_action = "rested" - return ActionResult(success=True, description=event, events=[event]) - - def _resolve_craft(self, agent: AgentState, action: Action) -> ActionResult: - recipe_name = str(action.parameters.get("recipe", "")).strip() - if not recipe_name: - recipe_name = str(action.parameters.get("item", "")).strip() - quantity = int(action.parameters.get("quantity", 1)) - if quantity < 1: - return ActionResult( - success=False, - description=f"{agent.name} cannot craft with quantity < 1", - ) - recipe = self.recipes.get(recipe_name) - if recipe is None: - return ActionResult( - success=False, - description=f"{agent.name} cannot craft '{recipe_name}' — unknown recipe", - ) - - for item, required in recipe.inputs.items(): - required_total = required * quantity - if agent.inventory.get(item, 0) < required_total: - return ActionResult( - success=False, - description=( - f"{agent.name} cannot craft '{recipe_name}' — insufficient {item} " - f"(need {required_total})" - ), - ) - - for item, required in recipe.inputs.items(): - required_total = required * quantity - agent.inventory[item] = agent.inventory.get(item, 0) - required_total - for item, produced in recipe.outputs.items(): - produced_total = produced * quantity - agent.inventory[item] = agent.inventory.get(item, 0) + produced_total - - event = f"[Tick {self.tick}] {agent.name} crafted {recipe_name} x{quantity}" - self._append_event(event, location=agent.location) - agent.last_action = f"crafted {recipe_name} x{quantity}" - return ActionResult( - success=True, - description=event, - events=[event], - ) - - def _resolve_deliver(self, agent: AgentState, action: Action) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=f"{agent.name} cannot deliver — no company demand is active", - ) - - request_id = str(action.parameters.get("request_id", "")).strip() - demand = self._find_open_company_demand(request_id) - if demand is None: - return ActionResult( - success=False, - description=f"{agent.name} cannot deliver request '{request_id}' — not open", - ) - - item = str(action.parameters.get("item", demand.required_item)).strip() - if item != demand.required_item: - return ActionResult( - success=False, - description=( - f"{agent.name} cannot deliver {item} for {demand.request_id} " - f"— requires {demand.required_item}" - ), - ) - if agent.inventory.get(item, 0) < 1: - return ActionResult( - success=False, - description=f"{agent.name} cannot deliver {item} — not carried", - ) - - inventory_before = agent.inventory.get(item, 0) - cash_before = company.cash - demand_status_before = demand.status - agent.inventory[item] = agent.inventory.get(item, 0) - 1 - demand.status = "delivered" - company.cash += demand.reward - event = ( - f"[Tick {self.tick}] {agent.name} delivered {item} for {demand.request_id}; " - f"company earned {demand.reward} cash" - ) - self._append_event(event, location=agent.location) - agent.last_action = f"delivered {item} for {demand.request_id}" - return ActionResult( - success=True, - description=event, - events=[event], - state_changes={ - "company_cash": company.cash, - "request_id": demand.request_id, - f"agent_inventory.{agent.id}.{item}": { - "before": inventory_before, - "after": agent.inventory.get(item, 0), - }, - "company.cash": { - "before": cash_before, - "after": company.cash, - }, - f"company.demand_streams.{demand.request_id}.status": { - "before": demand_status_before, - "after": demand.status, - }, - }, - ) - - def _resolve_recruit(self, agent: AgentState, action: Action) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=f"{agent.name} cannot recruit — no company candidate pool is active", - ) - - candidate_id = str(action.parameters.get("candidate_id", "")).strip() - candidate = self._find_available_company_candidate(candidate_id) - if candidate is None: - return ActionResult( - success=False, - description=f"{agent.name} cannot recruit '{candidate_id}' — not available", - ) - if company.cash < candidate.joining_cost: - return ActionResult( - success=False, - description=( - f"{agent.name} cannot recruit {candidate.name} — insufficient company cash " - f"(need {candidate.joining_cost})" - ), - ) - - cash_before = company.cash - candidate_status_before = candidate.status - company.cash -= candidate.joining_cost - candidate.status = "joined" - recruit_id = candidate.candidate_id - self.pending_recruits.append( - { - "id": recruit_id, - "name": candidate.name, - "personality": candidate.personality, - "location": candidate.location or agent.location, - "inventory": dict(candidate.inventory), - "role_claims": list(candidate.role_claims), - } - ) - event = ( - f"[Tick {self.tick}] {agent.name} recruited {candidate.name}; " - f"company spent {candidate.joining_cost} cash" - ) - self._append_event(event, location=agent.location) - agent.last_action = f"recruited {candidate.name}" - return ActionResult( - success=True, - description=event, - events=[event], - state_changes={ - "company_cash": company.cash, - "candidate_id": recruit_id, - "company.cash": { - "before": cash_before, - "after": company.cash, - }, - f"company.candidate_pool.{recruit_id}.status": { - "before": candidate_status_before, - "after": candidate.status, - }, - f"pending_recruits.{recruit_id}.exists": { - "before": False, - "after": True, - }, - }, - ) - - def _resolve_write_artifact(self, agent: AgentState, action: Action) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=( - f"{agent.name} cannot write company artifact — " - "company mode is inactive" - ), - ) - artifact_id = str(action.parameters.get("artifact_id", "")).strip() - if not artifact_id: - artifact_id = str(uuid.uuid4())[:8] - artifact = CompanyArtifact( - artifact_id=artifact_id, - kind=str(action.parameters.get("kind", "note")).strip() or "note", - title=str(action.parameters.get("title", "Untitled artifact")).strip() - or "Untitled artifact", - body=str(action.parameters.get("body", "")), - created_by=agent.id, - updated_by=agent.id, - location=agent.location, - tick_created=self.tick, - tick_updated=self.tick, - revision=1, - ) - company.artifacts.append(artifact) - company.artifact_write_count += 1 - event = ( - f"[Tick {self.tick}] {agent.name} wrote company artifact " - f"{artifact.artifact_id}: {artifact.title}" - ) - self._append_event(event, location=agent.location) - agent.last_action = f"wrote artifact {artifact.title}" - return ActionResult( - success=True, - description=event, - events=[event], - state_changes={ - "artifact_id": artifact.artifact_id, - "revision": artifact.revision, - f"company.artifacts.{artifact.artifact_id}.exists": { - "before": False, - "after": True, - }, - f"company.artifacts.{artifact.artifact_id}.revision": { - "before": 0, - "after": artifact.revision, - }, - }, - ) - - def _resolve_read_artifact(self, agent: AgentState, action: Action) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - artifact_id = str(action.parameters.get("artifact_id", "")).strip() - artifact = self._find_company_artifact(artifact_id) - if artifact is None: - return ActionResult( - success=False, - description=f"{agent.name} cannot read artifact '{artifact_id}' — not found", - ) - if artifact.location != agent.location: - return ActionResult( - success=False, - description=( - f"{agent.name} cannot read artifact '{artifact_id}' — not visible at " - f"{agent.location}" - ), - ) - company.artifact_read_count += 1 - event = ( - f"[Tick {self.tick}] {agent.name} read company artifact " - f"{artifact.artifact_id}: {artifact.title}" - ) - self._append_event(event, location=agent.location) - agent.last_action = f"read artifact {artifact.title}" - return ActionResult( - success=True, - description=f"{event} — {artifact.body}", - events=[event], - state_changes={"artifact_id": artifact.artifact_id, "body": artifact.body}, - ) - - def _resolve_update_artifact(self, agent: AgentState, action: Action) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - artifact_id = str(action.parameters.get("artifact_id", "")).strip() - artifact = self._find_company_artifact(artifact_id) - if artifact is None: - return ActionResult( - success=False, - description=f"{agent.name} cannot update artifact '{artifact_id}' — not found", - ) - if artifact.location != agent.location: - return ActionResult( - success=False, - description=( - f"{agent.name} cannot update artifact '{artifact_id}' — not visible at " - f"{agent.location}" - ), - ) - revision_before = artifact.revision - body_before = artifact.body - if "title" in action.parameters: - artifact.title = ( - str(action.parameters.get("title", artifact.title)).strip() - or artifact.title - ) - if "kind" in action.parameters: - artifact.kind = ( - str(action.parameters.get("kind", artifact.kind)).strip() - or artifact.kind - ) - if "body" in action.parameters: - artifact.body = str(action.parameters.get("body", artifact.body)) - artifact.updated_by = agent.id - artifact.tick_updated = self.tick - artifact.revision += 1 - company.artifact_write_count += 1 - event = ( - f"[Tick {self.tick}] {agent.name} updated company artifact " - f"{artifact.artifact_id}: {artifact.title} rev {artifact.revision}" - ) - self._append_event(event, location=agent.location) - agent.last_action = f"updated artifact {artifact.title}" - return ActionResult( - success=True, - description=event, - events=[event], - state_changes={ - "artifact_id": artifact.artifact_id, - "revision": artifact.revision, - f"company.artifacts.{artifact.artifact_id}.revision": { - "before": revision_before, - "after": artifact.revision, - }, - f"company.artifacts.{artifact.artifact_id}.body": { - "before": body_before, - "after": artifact.body, - }, - }, - ) - - def _resolve_accept_suggestion( - self, agent: AgentState, action: Action - ) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=f"{agent.name} cannot accept suggestion — company mode inactive", - ) - suggestion_id = str(action.parameters.get("suggestion_id", "")) - suggestion = next( - (s for s in company.pending_suggestions - if s.get("suggestion_id") == suggestion_id), - None, - ) - if suggestion is None: - return ActionResult( - success=False, - description=f"{agent.name} tried to accept nonexistent suggestion {suggestion_id}", - ) - if suggestion.get("target_agent_id") != agent.id: - return ActionResult( - success=False, - description=f"{agent.name} cannot accept a suggestion not targeted at them", - ) - # Remove suggestion from pending. - company.pending_suggestions = [ - s for s in company.pending_suggestions - if s.get("suggestion_id") != suggestion_id - ] - category = suggestion.get("category", "") - dept_name = _suggestion_dept_name(category) - tick = self.tick - company.org.add_department( - name=dept_name, - lead_agent_id=agent.id, - member_agent_ids=[agent.id], - created_tick=tick, - suggestion_id=suggestion_id, - ) - event = ( - f"[Tick {tick}] {agent.name} accepted suggestion and formed " - f"{dept_name}" - ) - self._append_event(event, location=agent.location) - return ActionResult( - success=True, description=event, events=[event], - state_changes={"department_created": dept_name}, - ) - - def _resolve_modify_suggestion( - self, agent: AgentState, action: Action - ) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=f"{agent.name} cannot modify suggestion — company mode inactive", - ) - suggestion_id = str(action.parameters.get("suggestion_id", "")) - suggestion = next( - (s for s in company.pending_suggestions - if s.get("suggestion_id") == suggestion_id), - None, - ) - if suggestion is None or suggestion.get("target_agent_id") != agent.id: - return ActionResult( - success=False, - description=f"{agent.name} cannot modify that suggestion", - ) - modifications = action.parameters.get("modifications", {}) - if not isinstance(modifications, dict): - return ActionResult( - success=False, - description=f"{agent.name} modifications must be a mapping", - ) - company.pending_suggestions = [ - s for s in company.pending_suggestions - if s.get("suggestion_id") != suggestion_id - ] - dept_name = str(modifications.get("name", _suggestion_dept_name( - suggestion.get("category", "") - ))) - tick = self.tick - company.org.add_department( - name=dept_name, - lead_agent_id=agent.id, - member_agent_ids=[agent.id], - created_tick=tick, - suggestion_id=suggestion_id, - ) - event = ( - f"[Tick {tick}] {agent.name} modified suggestion and formed " - f"{dept_name}" - ) - self._append_event(event, location=agent.location) - return ActionResult( - success=True, description=event, events=[event], - state_changes={"department_created": dept_name}, - ) - - def _resolve_create_role( - self, agent: AgentState, action: Action - ) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=f"{agent.name} cannot create role — company mode inactive", - ) - role_name = str(action.parameters.get("role_name", "")).strip() - if not role_name: - return ActionResult( - success=False, - description=f"{agent.name} tried to create role with empty name", - ) - dept_id = action.parameters.get("department_id") - if dept_id is not None: - dept_id = str(dept_id) - tick = self.tick - role = company.org.add_role( - name=role_name, - holder_agent_id=agent.id, - department_id=dept_id, - created_tick=tick, - ) - # Reflect role claim in agent state. - if role_name not in agent.role_claims: - agent.role_claims.append(role_name) - event = f"[Tick {tick}] {agent.name} created role: {role_name}" - self._append_event(event, location=agent.location) - return ActionResult( - success=True, description=event, events=[event], - state_changes={ - "role_id": role.role_id, - "role_name": role_name, - f"company.org.roles.{role.role_id}.exists": { - "before": False, - "after": True, - }, - }, - ) - - def _resolve_form_team( - self, agent: AgentState, action: Action - ) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=f"{agent.name} cannot form team — company mode inactive", - ) - team_name = str(action.parameters.get("team_name", "")).strip() - if not team_name: - return ActionResult( - success=False, - description=f"{agent.name} tried to form team with empty name", - ) - member_ids: list[str] = [ - str(m) for m in action.parameters.get("member_ids", []) - ] - min_members = company.org.min_members_for_team - if len(member_ids) < min_members: - return ActionResult( - success=False, - description=( - f"{agent.name} needs at least {min_members} members " - f"to form a team, got {len(member_ids)}" - ), - ) - # All members must be at same location and alive. - agent_loc = agent.location - for mid in member_ids: - member_state = self.agents.get(str(mid)) - if member_state is None or not member_state.alive: - return ActionResult( - success=False, - description=f"Member {mid} is not alive or does not exist", - ) - if member_state.location != agent_loc: - return ActionResult( - success=False, - description=( - f"Member {mid} is at {member_state.location}, " - f"not at {agent_loc}" - ), - ) - tick = self.tick - dept = company.org.add_department( - name=team_name, - lead_agent_id=agent.id, - member_agent_ids=member_ids, - created_tick=tick, - ) - if dept is None: - return ActionResult( - success=False, - description="Cannot form team: max departments reached", - ) - event = ( - f"[Tick {tick}] {agent.name} formed team {team_name} " - f"with {len(member_ids)} members" - ) - self._append_event(event, location=agent_loc) - return ActionResult( - success=True, description=event, events=[event], - state_changes={ - "dept_id": dept.dept_id, - "team_name": team_name, - f"company.org.departments.{dept.dept_id}.exists": { - "before": False, - "after": True, - }, - }, - ) - - def _resolve_interview( - self, agent: AgentState, action: Action - ) -> ActionResult: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return ActionResult( - success=False, - description=f"{agent.name} cannot interview — company mode inactive", - ) - candidate_id = str(action.parameters.get("candidate_id", "")) - candidate = self._find_available_company_candidate(candidate_id) - if candidate is None: - return ActionResult( - success=False, - description=f"Candidate {candidate_id} is not available", - ) - # Interview reveals personality and reduces joining cost. - cost_before = candidate.joining_cost - discount = max(1, int(cost_before * 0.25)) - candidate.joining_cost = max(0, cost_before - discount) - event = ( - f"[Tick {self.tick}] {agent.name} interviewed {candidate.name} — " - f"joining cost reduced from {cost_before} to {candidate.joining_cost}" - ) - self._append_event(event, location=agent.location) - return ActionResult( - success=True, description=event, events=[event], - state_changes={ - "candidate_id": candidate_id, - "joining_cost_before": cost_before, - "joining_cost_after": candidate.joining_cost, - }, - ) - - def _resolve_unknown(self, agent: AgentState, action: Action) -> ActionResult: - event = ( - f"[Tick {self.tick}] {agent.name} attempted '{action.verb}' " - f"— the world does not know how to resolve this physically" - ) - self._append_event(event, location=agent.location) - agent.last_action = f"attempted: {action.verb}" - return ActionResult(success=False, description=event, events=[event]) - - # --- Helpers --- - - def _find_agent_by_name(self, name: str, location: str) -> AgentState | None: - name_l = name.lower() - for peer_id in self._location_index.get(location, ()): - a = self.agents.get(peer_id) - if a and a.alive and a.name.lower() == name_l: - return a - return None - - def _is_adjacent(self, source: str, destination: str) -> bool: - if source == destination: - return True - return destination in self.location_graph.get(source, []) - - def _append_event( - self, - event: str, - *, - location: str | None = None, - locations: Iterable[str] | None = None, - ) -> None: - self.event_log.append(event) - visible_locations: set[str] = set() - if location is not None and location in self.locations: - visible_locations.add(location) - if locations is not None: - visible_locations.update(loc for loc in locations if loc in self.locations) - self._event_meta.append(EventVisibility(locations=visible_locations)) - self._trim_event_log() - - def _trim_event_log(self) -> None: - if len(self.event_log) > self.event_log_limit: - self.event_log = self.event_log[-self.event_log_limit:] - if len(self._event_meta) > len(self.event_log): - self._event_meta = self._event_meta[-len(self.event_log) :] - - def _apply_company_pressure(self) -> None: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return - burn = max(0, int(company.operating_cost_per_tick)) - if burn: - before = company.cash - company.cash = max(0, company.cash - burn) - if company.cash != before: - self._append_event( - f"[Tick {self.tick}] Company burned {burn} cash for operations", - locations=self.locations, - ) - for demand in company.demand_streams: - if demand.status == "open" and self.tick > demand.deadline_tick: - demand.status = "missed" - self._append_event( - f"[Tick {self.tick}] Company missed demand {demand.request_id}", - locations=self.locations, - ) - - def _find_open_company_demand(self, request_id: str) -> CompanyDemand | None: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - for demand in company.demand_streams: - if demand.request_id == request_id and demand.status == "open": - if self.tick > demand.deadline_tick: - demand.status = "missed" - return None - return demand - return None - - def _find_available_company_candidate(self, candidate_id: str) -> CompanyCandidate | None: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - for candidate in company.candidate_pool: - if candidate.candidate_id == candidate_id and candidate.status == "available": - return candidate - return None - - def _find_company_artifact(self, artifact_id: str) -> CompanyArtifact | None: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - for artifact in company.artifacts: - if artifact.artifact_id == artifact_id: - return artifact - return None - - def _company_summary(self) -> dict[str, Any] | None: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled: - return None - open_count = sum(1 for demand in company.demand_streams if demand.status == "open") - delivered_count = sum( - 1 for demand in company.demand_streams if demand.status == "delivered" - ) - missed_count = sum(1 for demand in company.demand_streams if demand.status == "missed") - alive_agents = [agent for agent in self.agents.values() if agent.alive] - role_claims = { - agent.id: list(agent.role_claims) - for agent in alive_agents - if agent.role_claims - } - burn = max(0, int(company.operating_cost_per_tick)) - runway = None if burn == 0 else company.cash // burn - return { - "enabled": company.enabled, - "name": company.name, - "stage": company.stage, - "cash": company.cash, - "operating_cost_per_tick": burn, - "runway_ticks": runway, - "open_demand_count": open_count, - "delivered_count": delivered_count, - "missed_count": missed_count, - "team_size": len(alive_agents), - "active_contributor_count": sum( - 1 for agent in alive_agents if agent.last_action is not None - ) or len(alive_agents), - "role_claims": role_claims, - "artifact_count": len(company.artifacts), - "artifact_read_count": company.artifact_read_count, - "artifact_write_count": company.artifact_write_count, - "organization": self._company_organization_summary(alive_agents), - "survival_gauntlet": self._company_survival_gauntlet_summary( - company, alive_agents - ), - "demand_streams": [ - { - "request_id": demand.request_id, - "description": demand.description, - "required_item": demand.required_item, - "reward": demand.reward, - "deadline_tick": demand.deadline_tick, - "status": demand.status, - } - for demand in company.demand_streams - ], - "candidate_pool": [ - { - "candidate_id": candidate.candidate_id, - "name": candidate.name, - "personality": candidate.personality, - "location": candidate.location, - "joining_cost": candidate.joining_cost, - "role_claims": list(candidate.role_claims), - "status": candidate.status, - } - for candidate in company.candidate_pool - ], - "artifacts": [ - { - "artifact_id": artifact.artifact_id, - "kind": artifact.kind, - "title": artifact.title, - "body": artifact.body, - "created_by": artifact.created_by, - "updated_by": artifact.updated_by, - "location": artifact.location, - "tick_created": artifact.tick_created, - "tick_updated": artifact.tick_updated, - "revision": artifact.revision, - } - for artifact in company.artifacts - ], - "pending_suggestions": [ - dict(s) for s in company.pending_suggestions - ], - "org": company.org.to_summary(), - "market": { - "total_revenue_earned": ( - self.market.total_revenue_earned if self.market else 0 - ), - "active_shocks": ( - list(self.market.active_shocks) if self.market else [] - ), - "open_demand_count": ( - self.market.count_open_demands() if self.market else 0 - ), - }, - "valuation": { - "current_valuation": ( - self.valuation.current_valuation if self.valuation else 0 - ), - "ipo_triggered": ( - self.valuation.ipo_triggered if self.valuation else False - ), - "ipo_progress": ( - min(1.0, self.valuation.current_valuation / self.valuation.ipo_valuation_target) - if self.valuation and self.valuation.ipo_valuation_target > 0 - else 0 - ), - "consecutive_profitable_ticks": ( - self.valuation.consecutive_profitable_ticks if self.valuation else 0 - ), - }, - "space": ( - self.office_space.to_dict() if self.office_space - else {"stage": "garage", "capacity": 3} - ), - } - - def _apply_company_gauntlet_shocks(self) -> None: - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - gauntlet = company.survival_gauntlet - if not company.enabled or not bool(gauntlet.get("enabled", False)): - return - for shock in self._gauntlet_shocks(company): - shock_id = self._shock_id(shock) - if shock_id in company.gauntlet_applied_shocks: - continue - if int(shock.get("tick", 0)) != self.tick: - continue - self._apply_company_gauntlet_shock(company, shock, shock_id) - company.gauntlet_applied_shocks.append(shock_id) - - def _apply_company_gauntlet_shock( - self, - company: CompanyState, - shock: dict[str, Any], - shock_id: str, - ) -> None: - kind = str(shock.get("kind", "unknown")) - if kind == "founder_exit": - agent_id = str(shock.get("agent_id", "")) - agent = self.agents.get(agent_id) - if agent is None: - agent_name = str(shock.get("agent_name", "")) - agent = next( - ( - candidate - for candidate in self.agents.values() - if candidate.name == agent_name - ), - None, - ) - if agent is not None and agent.alive: - agent.alive = False - agent.death_cause = "company_shock: founder_exit" - self._location_index_remove(agent.id, agent.location) - self._append_event( - ( - f"[Tick {self.tick}] Company survival shock {shock_id}: " - f"founder exit removed {agent.name}" - ), - location=agent.location, - ) - else: - self._append_event( - f"[Tick {self.tick}] Company survival shock {shock_id}: " - "founder exit had no active target" - ) - return - if kind == "market_shift": - for raw_demand in shock.get("demand_streams", []): - if not isinstance(raw_demand, dict): - continue - demand = CompanyDemand( - request_id=str(raw_demand.get("request_id", "")), - description=str(raw_demand.get("description", "")), - required_item=str(raw_demand.get("required_item", "")), - reward=max(0, int(raw_demand.get("reward", 0))), - deadline_tick=max(0, int(raw_demand.get("deadline_tick", self.tick))), - status=str(raw_demand.get("status", "open")), - ) - company.demand_streams = [ - existing - for existing in company.demand_streams - if existing.request_id != demand.request_id - ] - company.demand_streams.append(demand) - self._append_event( - f"[Tick {self.tick}] Company survival shock {shock_id}: market demand shifted" - ) - return - if kind == "cash_crisis": - delta = int(shock.get("cash_delta", 0)) - company.cash = max(0, company.cash + delta) - self._append_event( - f"[Tick {self.tick}] Company survival shock {shock_id}: cash changed by {delta}" - ) - return - if kind == "talent_turnover": - agent_ids = [str(agent_id) for agent_id in shock.get("agent_ids", [])] - for agent_id in agent_ids: - agent = self.agents.get(agent_id) - if agent is None or not agent.alive: - continue - agent.alive = False - agent.death_cause = "company_shock: talent_turnover" - self._location_index_remove(agent.id, agent.location) - self._append_event( - f"[Tick {self.tick}] Company survival shock {shock_id}: " - f"talent turnover removed {len(agent_ids)} agents" - ) - return - if kind == "governance_stress": - stress_delta = max(0, int(shock.get("stress_delta", 1))) - for agent in self.agents.values(): - if agent.alive: - agent.stress = self._clamp_stat(agent.stress + stress_delta) - self._append_event( - f"[Tick {self.tick}] Company survival shock {shock_id}: " - "governance stress increased coordination load" - ) - return - self._append_event( - f"[Tick {self.tick}] Company survival shock {shock_id}: unknown shock kind {kind}" - ) - - def _company_survival_gauntlet_summary( - self, - company: CompanyState, - alive_agents: list[AgentState], - ) -> dict[str, Any] | None: - gauntlet = company.survival_gauntlet - if not bool(gauntlet.get("enabled", False)): - return None - shocks = self._gauntlet_shocks(company) - applied = set(company.gauntlet_applied_shocks) - current = [shock for shock in shocks if self._shock_id(shock) in applied] - current_shock = current[-1] if current else None - prior_shocks = current[:-1] - upcoming = [shock for shock in shocks if self._shock_id(shock) not in applied] - org = self._company_organization_summary(alive_agents) - collapse = self._company_collapse_summary(company, alive_agents) - metrics = { - "cash_continuity": company.cash, - "delivery_continuity": sum( - 1 for demand in company.demand_streams if demand.status == "delivered" - ), - "decision_continuity": org["routine_stability_score"], - "knowledge_continuity": len(company.artifacts) + company.artifact_write_count, - "team_regeneration": len(alive_agents), - "strategy_adaptation": sum( - 1 for shock in applied if "market" in shock or "pivot" in shock - ), - } - return { - "enabled": True, - "current_shock": self._shock_summary(current_shock, "active") - if current_shock - else None, - "prior_shocks": [ - self._shock_summary(shock, "completed") for shock in prior_shocks - ], - "upcoming_shocks": [ - self._shock_summary(shock, "scheduled") for shock in upcoming - ], - "survival_metrics": metrics, - "recovery_windows": [ - { - "shock_id": self._shock_id(shock), - "ticks_since_shock": max(0, self.tick - int(shock.get("tick", 0))), - "recovered": not collapse["collapsed"] and bool(alive_agents), - } - for shock in current - ], - "organizational_survival_half_life": [ - { - "shock_id": self._shock_id(shock), - "ticks_survived_after_shock": max( - 0, self.tick - int(shock.get("tick", 0)) - ), - } - for shock in current - ], - "collapse": collapse, - } - - def _company_collapse_summary( - self, company: CompanyState, alive_agents: list[AgentState] - ) -> dict[str, Any]: - causes: list[str] = [] - if not alive_agents: - causes.append("no active agents") - if company.cash <= 0: - causes.append("cash exhausted") - return { - "collapsed": bool(causes), - "tick": self.tick if causes else None, - "cause_candidates": causes, - } - - @staticmethod - def _gauntlet_shocks(company: CompanyState) -> list[dict[str, Any]]: - raw_shocks = company.survival_gauntlet.get("shocks", []) - if not isinstance(raw_shocks, list): - return [] - shocks = [dict(shock) for shock in raw_shocks if isinstance(shock, dict)] - return sorted( - shocks, - key=lambda shock: (int(shock.get("tick", 0)), str(shock.get("shock_id", ""))), - ) - - @staticmethod - def _shock_id(shock: dict[str, Any]) -> str: - explicit = str(shock.get("shock_id", "")).strip() - if explicit: - return explicit - return f"{shock.get('kind', 'shock')}-{int(shock.get('tick', 0))}" - - def _shock_summary(self, shock: dict[str, Any] | None, status: str) -> dict[str, Any] | None: - if shock is None: - return None - return { - "shock_id": self._shock_id(shock), - "kind": str(shock.get("kind", "unknown")), - "tick": int(shock.get("tick", 0)), - "status": status, - } - - def _company_organization_summary( - self, alive_agents: list[AgentState] - ) -> dict[str, Any]: - clusters_by_label: dict[str, dict[str, Any]] = {} - for agent in sorted(alive_agents, key=lambda state: state.id): - label = self._organization_label_hint(agent) - evidence: list[str] = [] - if agent.role_claims: - evidence.append(f"role claims: {', '.join(agent.role_claims)}") - if agent.last_action: - evidence.append(f"last action: {agent.last_action}") - cluster = clusters_by_label.setdefault( - label, - { - "cluster_id": f"cluster-{label}", - "label_hint": label, - "agents": [], - "confidence": 0.35, - "evidence": [], - }, - ) - cluster["agents"].append(agent.name) - cluster["evidence"].extend(evidence[:2]) - cluster["confidence"] = min( - 0.95, float(cluster["confidence"]) + (0.15 if evidence else 0.05) - ) - - handoff_counts: dict[tuple[str, str], dict[str, Any]] = {} - for event in self.event_log[-100:]: - match = re.search(r"\] (?P.+?) gave \d+ .+ to (?P.+)$", event) - if not match: - continue - key = (match.group("source"), match.group("target")) - handoff = handoff_counts.setdefault( - key, - {"from": key[0], "to": key[1], "count": 0, "evidence": []}, - ) - handoff["count"] += 1 - if len(handoff["evidence"]) < 3: - handoff["evidence"].append(event) - - action_count = sum(1 for agent in alive_agents if agent.last_action) - artifact_updates = 0 - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if company.enabled: - artifact_updates = sum(artifact.revision for artifact in company.artifacts) - routine_stability_score = min( - 100, - action_count * 15 - + len(handoff_counts) * 20 - + min(30, artifact_updates * 5), - ) - - return { - "clusters": sorted( - clusters_by_label.values(), - key=lambda cluster: (cluster["label_hint"], cluster["agents"]), - ), - "handoff_loops": sorted( - handoff_counts.values(), - key=lambda handoff: (-int(handoff["count"]), handoff["from"], handoff["to"]), - ), - "routine_stability_score": routine_stability_score, - } - - @staticmethod - def _organization_label_hint(agent: AgentState) -> str: - if agent.role_claims: - return agent.role_claims[0].strip().lower().replace(" ", "-") or "unclaimed" - action = (agent.last_action or "").lower() - if "artifact" in action or "note" in action or "write" in action: - return "knowledge" - if "deliver" in action or "ship" in action: - return "delivery" - if "recruit" in action or "hire" in action: - return "talent" - return "unclaimed" - - # --- Advance tick sub-steps (company emergence) --- - - def _apply_market_update(self) -> None: - """Generate new demands and apply market shocks.""" - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled or self.market is None: - return - self.market.ticks_since_last_generation += 1 - if self.market.ticks_since_last_generation >= self.market.demand_generation_every: - self.market.generate_demands(company.stage, self.tick) - self.market.mark_expired_shocks(self.tick) - # Random shock check (low probability per tick). - if self.market.shock_pool and self.market.count_open_demands() > 0: - shock = self.market.apply_market_shock(company.stage, self.tick) - if shock: - desc = shock.get("description", shock.get("kind", "")) - self._append_event( - f"[Tick {self.tick}] Market shock: {desc}", - locations=self.locations, - ) - - def _apply_pattern_detection(self) -> None: - """Run pattern detection and generate suggestions for all agents.""" - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled or self.pattern_detector is None: - return - self.pattern_detector.prune_logs(self.tick) - for agent_id, agent_state in self.agents.items(): - if not agent_state.alive: - continue - suggestions = self.pattern_detector.generate_suggestions( - agent_id, self.tick, company.stage, - ) - for suggestion in suggestions: - # Deduplicate: don't re-suggest same category if already pending. - existing_cats = { - s.get("category") for s in company.pending_suggestions - if s.get("target_agent_id") == agent_id - } - if suggestion["category"] not in existing_cats: - company.pending_suggestions.append(suggestion) - self._append_event( - f"[Tick {self.tick}] Suggestion for {agent_state.name}: " - f"{suggestion['message']}", - location=agent_state.location, - ) - # Expire old suggestions. - expiry = self.pattern_detector.suggestion_expiry_ticks - company.pending_suggestions = [ - s for s in company.pending_suggestions - if s.get("tick", 0) + expiry > self.tick - ] - - def _apply_space_pressure(self) -> None: - """Check office capacity and apply crowding pressure.""" - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled or self.office_space is None: - return - team_size = sum(1 for a in self.agents.values() if a.alive) - result = self.office_space.apply_capacity_pressure(team_size) - if result["over_capacity"]: - self._append_event( - f"[Tick {self.tick}] Office over capacity " - f"({team_size}/{self.office_space.capacity})", - locations=self.locations, - ) - expanded, cost = self.office_space.auto_expand(team_size, company.cash) - if expanded: - company.cash = max(0, company.cash - cost) - self._append_event( - f"[Tick {self.tick}] Office expanded to {self.office_space.stage} " - f"(cost {cost}, new capacity {self.office_space.capacity})", - locations=self.locations, - ) - - def _apply_valuation_update(self) -> None: - """Calculate valuation and check IPO conditions.""" - company = self.company if isinstance(self.company, CompanyState) else CompanyState() - if not company.enabled or self.valuation is None: - return - team_size = sum(1 for a in self.agents.values() if a.alive) - dept_count = company.org.department_count() - cumulative = self.market.total_revenue_earned if self.market else 0 - cash = company.cash - entry = self.valuation.update( - cumulative_revenue=cumulative, - team_size=team_size, - department_count=dept_count, - cash_reserve=cash, - tick=self.tick, - ) - if entry.get("ipo_triggered"): - self._append_event( - f"[Tick {self.tick}] IPO TRIGGERED — valuation reached " - f"{entry['valuation']}", - locations=self.locations, - ) - - def _aligned_event_meta(self) -> list[EventVisibility]: - missing = max(0, len(self.event_log) - len(self._event_meta)) - unknown = [EventVisibility() for _ in range(missing)] - return unknown + self._event_meta[-len(self.event_log) :] - - def consume_pending_births(self) -> list[dict[str, str]]: - """Return and clear births produced by lifecycle progression.""" - births = list(self.pending_births) - self.pending_births.clear() - return births - - def consume_pending_recruits(self) -> list[dict[str, Any]]: - """Return and clear company recruits produced by recruit intents.""" - recruits = list(self.pending_recruits) - self.pending_recruits.clear() - return recruits - - def _life_stage_for_age(self, age_ticks: int) -> str: - juvenile_at = int(self.lifecycle.life_stage_thresholds.get("juvenile", 100)) - adult_at = int(self.lifecycle.life_stage_thresholds.get("adult", 400)) - elder_at = int(self.lifecycle.life_stage_thresholds.get("elder", 1000)) - if age_ticks < juvenile_at: - return "infant" - if age_ticks < adult_at: - return "juvenile" - if age_ticks < elder_at: - return "adult" - return "elder" - - @staticmethod - def _clamp_stat(value: int) -> int: - return max(0, min(100, value)) - - def _apply_lifecycle_updates(self) -> None: - infectious_by_location: dict[str, int] = {} - if self.pressure.disease_enabled: - for state in self.agents.values(): - if state.alive and bool(state.contagion_profile.get("infectious", False)): - infectious_by_location[state.location] = ( - infectious_by_location.get(state.location, 0) + 1 - ) - - for state in self.agents.values(): - if not state.alive: - continue - - state.age_ticks += self.lifecycle.age_tick_step - state.life_stage = self._life_stage_for_age(state.age_ticks) - - if self.pressure.survival_enabled: - self._apply_survival_needs(state) - - if self.pressure.disease_enabled: - self._apply_disease_progression(state, infectious_by_location) - - if state.pregnancy is None: - self._try_start_pregnancy(state) - if state.pregnancy is not None: - progress_ticks = int(state.pregnancy.get("progress_ticks", 0)) + 1 - state.pregnancy["progress_ticks"] = progress_ticks - target_ticks = int( - state.pregnancy.get( - "target_ticks", - self.lifecycle.pregnancy_duration_min_ticks, - ) - ) - if progress_ticks >= max(1, target_ticks): - self._queue_birth(state) - state.pregnancy = None - - if self.axioms.social_tracking: - self._compact_social_maps(state) - state.vitality = self._clamp_stat(state.vitality) - state.stress = self._clamp_stat(state.stress) - state.hunger = self._clamp_stat(state.hunger) - state.fatigue = self._clamp_stat(state.fatigue) - if self.axioms.mortality: - self._check_and_apply_death(state) - - def _apply_environment_updates(self) -> None: - if not self.pressure.environment_enabled: - return - seasons = ("spring", "summer", "autumn", "winter") - season_index = ( - self.tick // max(1, self.pressure.season_length_ticks) - ) % len(seasons) - new_season = seasons[season_index] - if self.environment.get("season") != new_season: - self.environment["season"] = new_season - self._append_event(f"Season changed to {new_season}.", locations=self.locations) - - def _apply_resource_decay(self) -> None: - every = int(self.pressure.resource_decay_every) - if not self.pressure.resources_enabled or every <= 0 or self.tick % every != 0: - return - for location, items in self.location_items.items(): - for item in list(items): - if items[item] <= 0: - del items[item] - continue - decay_quantity = self._resource_decay_quantity(item, every) - if decay_quantity <= 0: - continue - items[item] -= min(items[item], decay_quantity) - if items[item] <= 0: - del items[item] - self._append_event(f"Resource {item} decayed at {location}.", location=location) - - def _resource_decay_quantity(self, item: str, every: int) -> int: - if not item.startswith("stored:"): - return 1 - - multiplier = max(0.0, float(self.pressure.storage_decay_multiplier)) - if multiplier <= 0.0: - return 0 - - # Stored resources decay deterministically using accumulated due ticks: - # 0.0 never decays, 1.0 decays every due tick, 0.5 decays every other due tick. - due_tick_count = self.tick // every - previous_due_tick_count = max(0, due_tick_count - 1) - return int(due_tick_count * multiplier) - int( - previous_due_tick_count * multiplier - ) - - def _apply_resource_regeneration(self) -> None: - if not self.pressure.resources_enabled: - return - global_every = int(self.pressure.resource_regeneration_every) - if global_every > 0 and self.tick % global_every != 0: - return - for location, resources in self.resource_zones.items(): - bucket = self.location_items.setdefault(location, {}) - for item, spec in resources.items(): - every = int(spec.get("every", 1)) - if every <= 0 or self.tick % every != 0: - continue - quantity = int(spec.get("quantity", 1)) - bucket[item] = bucket.get(item, 0) + quantity - self._append_event( - f"Resource {item} regenerated at {location}.", - location=location, - ) - - def _apply_survival_needs(self, state: AgentState) -> None: - if state.last_action and "rest" in state.last_action: - state.vitality += self.lifecycle.vitality_rest_gain - state.stress -= self.lifecycle.stress_rest_reduction - state.hunger = max(0, state.hunger - self.lifecycle.hunger_rest_reduction) - state.fatigue = max(0, state.fatigue - self.lifecycle.fatigue_rest_reduction) - else: - state.vitality -= self.lifecycle.vitality_loss_per_tick - state.stress += self.lifecycle.stress_gain_per_tick - state.hunger += self.lifecycle.hunger_gain_per_tick - state.fatigue += self.lifecycle.fatigue_gain_per_tick - - if self.axioms.auto_eat and state.hunger >= self.lifecycle.auto_eat_hunger_threshold: - self._attempt_auto_eat(state) - - if state.hunger >= self.lifecycle.hunger_vitality_penalty_threshold: - hunger_pressure = ( - state.hunger - self.lifecycle.hunger_vitality_penalty_threshold - ) / max(1, 100 - self.lifecycle.hunger_vitality_penalty_threshold) - if random.random() < max(0.0, min(1.0, hunger_pressure)): - state.vitality -= max( - 1, - int(round(self.lifecycle.needs_penalty * (1.0 + hunger_pressure))), - ) - if state.fatigue >= self.lifecycle.fatigue_stress_penalty_threshold: - fatigue_pressure = ( - state.fatigue - self.lifecycle.fatigue_stress_penalty_threshold - ) / max(1, 100 - self.lifecycle.fatigue_stress_penalty_threshold) - if random.random() < max(0.0, min(1.0, fatigue_pressure)): - state.stress += max( - 1, - int(round(self.lifecycle.needs_penalty * (1.0 + fatigue_pressure))), - ) - - def _apply_disease_progression( - self, - state: AgentState, - infectious_by_location: dict[str, int], - ) -> None: - profile = state.contagion_profile - if profile.get("infectious", False): - profile["infected_ticks"] = int(profile.get("infected_ticks", 0)) + 1 - state.vitality -= self.lifecycle.disease_vitality_penalty - state.stress += self.lifecycle.disease_stress_penalty - recovered = int(profile["infected_ticks"]) >= self.lifecycle.disease_recovery_ticks - if not recovered and random.random() < self._recovery_chance(state): - recovered = True - if recovered: - profile["status"] = "recovered" - profile["infectious"] = False - profile["infected_ticks"] = 0 - profile["exposure_count"] = 0 - self._append_event( - f"[Tick {self.tick}] {state.name} recovered from illness", - location=state.location, - ) - elif profile.get("status", "susceptible") == "susceptible": - if infectious_by_location.get(state.location, 0) > 0: - profile["exposure_count"] = int(profile.get("exposure_count", 0)) + 1 - if int(profile["exposure_count"]) < max( - 1, - self.lifecycle.disease_exposure_threshold, - ): - return - if random.random() < self._infection_chance( - state=state, - infectious_neighbors=infectious_by_location.get(state.location, 0), - ): - profile["status"] = "infected" - profile["infectious"] = True - profile["infected_ticks"] = 0 - self._append_event( - f"[Tick {self.tick}] {state.name} became ill after local exposure", - location=state.location, - ) - else: - profile["exposure_count"] = max( - 0, - int(profile.get("exposure_count", 0)) - - self.lifecycle.disease_exposure_decay_per_tick, - ) - - def _attempt_auto_eat(self, state: AgentState) -> None: - for food in self.lifecycle.food_items: - if state.inventory.get(food, 0) > 0: - state.inventory[food] -= 1 - state.hunger = max(0, state.hunger - self.lifecycle.nourishment_gain_per_food) - self._append_event( - f"[Tick {self.tick}] {state.name} consumed {food} to reduce hunger", - location=state.location, - ) - return - - def _try_start_pregnancy(self, state: AgentState) -> None: - if self._conception_blocker(state) is not None: - return - - partner = self._find_conception_partner(state) - if partner is None: - return - - chance = self._conception_chance(state, partner) - if random.random() >= chance: - return - - self._start_pregnancy(state, partner) - - def _conception_blocker(self, state: AgentState) -> str | None: - if not state.alive: - return f"{state.name} is not alive" - if state.life_stage != "adult": - return f"{state.name} is not an adult" - if state.vitality < self.lifecycle.conception_min_vitality: - return f"{state.name} lacks sufficient vitality" - if state.stress > self.lifecycle.conception_max_stress: - return f"{state.name} is too stressed" - if state.hunger > self.lifecycle.auto_eat_hunger_threshold: - return f"{state.name} is too hungry" - return None - - def _start_pregnancy(self, state: AgentState, partner: AgentState) -> str: - min_ticks = max(1, self.lifecycle.pregnancy_duration_min_ticks) - max_ticks = max(min_ticks, self.lifecycle.pregnancy_duration_max_ticks) - duration_ticks = random.randint(min_ticks, max_ticks) - state.pregnancy = { - "partner_hint": partner.name, - "progress_ticks": 0, - "target_ticks": duration_ticks, - } - event = f"[Tick {self.tick}] {state.name} started pregnancy (partner: {partner.name})" - self._append_event(event, location=state.location) - return event - - def _find_conception_partner(self, state: AgentState) -> AgentState | None: - candidates: list[AgentState] = [] - for other_id in self._location_index.get(state.location, ()): - if other_id == state.id: - continue - other = self.agents.get(other_id) - if not other or not other.alive: - continue - if self._conception_blocker(other) is not None: - continue - candidates.append(other) - if not candidates: - return None - return random.choice(candidates) - - def _conception_chance(self, state: AgentState, partner: AgentState) -> float: - vitality_signal = ( - state.vitality + partner.vitality - ) / 200.0 - stress_signal = ( - state.stress + partner.stress - ) / 200.0 - hunger_signal = ( - state.hunger + partner.hunger - ) / 200.0 - - chance = self.lifecycle.conception_base_chance - chance += vitality_signal * self.lifecycle.conception_vitality_weight - chance -= stress_signal * self.lifecycle.conception_stress_weight - chance -= hunger_signal * self.lifecycle.conception_hunger_weight - - if state.contagion_profile.get("infectious", False): - chance -= self.lifecycle.conception_infection_penalty - if partner.contagion_profile.get("infectious", False): - chance -= self.lifecycle.conception_infection_penalty - - if self.axioms.social_tracking: - trust_signal = ( - state.trust_by_agent.get(partner.id, 0.0) - + partner.trust_by_agent.get(state.id, 0.0) - ) / 2.0 - obligation_signal = ( - state.obligation_by_agent.get(partner.id, 0.0) - + partner.obligation_by_agent.get(state.id, 0.0) - ) / 2.0 - chance += trust_signal * self.lifecycle.conception_trust_weight - chance -= obligation_signal * self.lifecycle.conception_obligation_weight - - return max(0.0, min(0.85, chance)) - - def _infection_chance(self, state: AgentState, infectious_neighbors: int) -> float: - profile = state.contagion_profile - exposure = int(profile.get("exposure_count", 0)) - resilience = state.immune_resilience / 100.0 - needs_vulnerability = (state.hunger + state.fatigue + state.stress) / 300.0 - - chance = self.lifecycle.disease_transmission_base_chance - chance += infectious_neighbors * self.lifecycle.disease_contact_weight - chance += exposure * self.lifecycle.disease_exposure_weight - chance += needs_vulnerability * self.lifecycle.disease_need_vulnerability_weight - chance -= resilience * self.lifecycle.disease_resilience_protection_weight - return max(0.0, min(0.95, chance)) - - def _recovery_chance(self, state: AgentState) -> float: - resilience = state.immune_resilience / 100.0 - chance = self.lifecycle.disease_recovery_base_chance - chance += resilience * self.lifecycle.disease_recovery_resilience_weight - if state.last_action and "rest" in state.last_action: - chance += self.lifecycle.disease_recovery_rest_bonus - return max(0.0, min(0.95, chance)) - - def _compact_social_maps(self, state: AgentState) -> None: - limit = max(1, self.lifecycle.social_memory_max_entries) - state.trust_by_agent = { - agent_id: value * 0.995 for agent_id, value in state.trust_by_agent.items() - } - state.obligation_by_agent = { - agent_id: value * 0.997 - for agent_id, value in state.obligation_by_agent.items() - } - - if len(state.trust_by_agent) > limit: - keep = sorted(state.trust_by_agent.keys())[-limit:] - state.trust_by_agent = {k: state.trust_by_agent[k] for k in keep} - - if len(state.obligation_by_agent) > limit: - keep = sorted(state.obligation_by_agent.keys())[-limit:] - state.obligation_by_agent = {k: state.obligation_by_agent[k] for k in keep} - - def _check_and_apply_death(self, state: AgentState) -> None: - if state.vitality <= 0: - self._mark_dead(state, "vitality_depletion") - return - if state.life_stage == "elder" and state.vitality < 8 and state.stress > 90: - self._mark_dead(state, "age_related_failure") - - def _mark_dead(self, state: AgentState, cause: str) -> None: - if not state.alive: - return - self._location_index_remove(state.id, state.location) - state.alive = False - state.death_cause = cause - state.last_action = "deceased" - self.total_deaths += 1 - self._append_event( - f"[Tick {self.tick}] {state.name} died ({cause})", - location=state.location, - ) - - def _queue_birth(self, parent: AgentState) -> None: - newborn_id = str(uuid.uuid4())[:8] - newborn_name = f"Newborn-{newborn_id}" - self.pending_births.append( - { - "id": newborn_id, - "name": newborn_name, - "location": parent.location, - "parent_name": parent.name, - } - ) - self.total_births += 1 - self._append_event( - f"[Tick {self.tick}] {parent.name} gave birth to {newborn_name}", - location=parent.location, - ) - - @classmethod - def _deserialize_event_log_payload( - cls, - payload: dict[str, Any], - known_locations: set[str], - ) -> tuple[list[str], list[EventVisibility]]: - event_log = payload.get("event_log") - if isinstance(event_log, list): - events: list[str] = [] - meta: list[EventVisibility] = [] - for entry in event_log: - if isinstance(entry, str): - events.append(entry) - meta.append(EventVisibility()) - continue - if not isinstance(entry, dict): - continue - raw_event = entry.get("event", entry.get("description")) - if not isinstance(raw_event, str): - continue - events.append(raw_event) - meta.append( - cls._event_visibility_from_payload( - entry.get("visibility"), - known_locations, - ) - ) - return events, meta - - recent_events = payload.get("recent_events", []) - if not isinstance(recent_events, list): - return [], [] - events = [event for event in recent_events if isinstance(event, str)] - # Legacy snapshots have only strings. Preserve them for global observers, - # but attach no local visibility so load does not leak old events locally. - return events, [EventVisibility() for _ in events] - - @staticmethod - def _event_visibility_from_payload( - raw_visibility: Any, - known_locations: set[str], - ) -> EventVisibility: - if not isinstance(raw_visibility, dict): - return EventVisibility() - raw_locations = raw_visibility.get("locations", []) - if not isinstance(raw_locations, list): - return EventVisibility() - return EventVisibility( - locations={ - str(location) - for location in raw_locations - if str(location) in known_locations - } - ) - - @classmethod - def from_dict(cls, payload: dict[str, Any]) -> World: - locations = list(payload.get("locations", [])) - event_log, event_meta = cls._deserialize_event_log_payload( - payload, - known_locations={str(location) for location in locations}, - ) - world = cls( - name=str(payload.get("name", "AnteLab World")), - tick=int(payload.get("tick", 0)), - locations=locations, - location_graph={ - key: list(value) - for key, value in dict(payload.get("location_graph", {})).items() - }, - location_items={ - loc: {item: int(qty) for item, qty in items.items()} - for loc, items in dict(payload.get("location_items", {})).items() - }, - location_features={ - loc: {feature: int(qty) for feature, qty in features.items()} - for loc, features in dict(payload.get("location_features", {})).items() - }, - resource_zones={ - loc: { - item: { - key: int(value) - for key, value in dict(spec).items() - } - for item, spec in dict(resources).items() - } - for loc, resources in dict(payload.get("resource_zones", {})).items() - }, - recipes={ - name: Recipe( - inputs={k: int(v) for k, v in recipe.get("inputs", {}).items()}, - outputs={k: int(v) for k, v in recipe.get("outputs", {}).items()}, - ) - for name, recipe in dict(payload.get("recipes", {})).items() - }, - company=payload.get("company"), - event_log_limit=int(payload.get("event_log_limit", 2000)), - event_log=event_log, - pressure=dict(payload.get("pressure", {})), - ) - world._event_meta = event_meta[-len(world.event_log) :] - world._trim_event_log() - experiment = dict(payload.get("experiment", {})) - world.axioms = ExperimentAxioms( - perception=str(experiment.get("perception", "local")), - communication=str(experiment.get("communication", "colocated")), - social_tracking=bool(experiment.get("social_tracking", True)), - auto_eat=bool(experiment.get("auto_eat", False)), - mortality=bool(experiment.get("mortality", True)), - memory_size=int(experiment.get("memory_size", 50)), - ) - metrics = dict(payload.get("metrics", {})) - world.total_births = int(metrics.get("total_births", 0)) - world.total_deaths = int(metrics.get("total_deaths", 0)) - environment = payload.get("environment") - if isinstance(environment, dict): - world.environment.update(environment) - - agents_raw = payload.get("agents", []) - for agent in agents_raw: - if not isinstance(agent, dict): - continue - location = str( - agent.get( - "location", - world.locations[0] if world.locations else "unknown", - ) - ) - world.register_agent( - agent_id=str(agent.get("id", "")), - name=str(agent.get("name", "")), - location=location, - inventory={k: int(v) for k, v in dict(agent.get("inventory", {})).items()}, - age_ticks=int(agent.get("age_ticks", 0)), - vitality=int(agent.get("vitality", 100)), - immune_resilience=int(agent.get("immune_resilience", 50)), - stress=int(agent.get("stress", 0)), - hunger=int(agent.get("hunger", 0)), - fatigue=int(agent.get("fatigue", 0)), - pregnancy=dict(agent.get("pregnancy", {})) if agent.get("pregnancy") else None, - contagion_profile=dict(agent.get("contagion_profile", {})), - role_claims=[str(claim) for claim in agent.get("role_claims", [])], - alive=bool(agent.get("alive", True)), - ) - state = world.agents[str(agent.get("id", ""))] - state.last_action = agent.get("last_action") - state.death_cause = agent.get("death_cause") - state.life_stage = str(agent.get("life_stage", state.life_stage)) - return world - - -def _suggestion_dept_name(category: str) -> str: - """Map a suggestion category to a default department name.""" - _names: dict[str, str] = { - "delivery": "Delivery Department", - "crafting": "Production Department", - "coordination": "Joint Decision Council", - "delegation": "Management Office", - "planning": "Company Charter Committee", - } - return _names.get(category, f"{category.title()} Department") - - -_PRIMITIVES: dict[str, Any] = { - "move": World._resolve_move, - "go": World._resolve_move, - "walk": World._resolve_move, - "say": World._resolve_say, - "speak": World._resolve_say, - "talk": World._resolve_say, - "tell": World._resolve_say, - "give": World._resolve_give, - "offer": World._resolve_give, - "hand": World._resolve_give, - "take": World._resolve_take, - "grab": World._resolve_take, - "pick_up": World._resolve_take, - "pickup": World._resolve_take, - "harvest": World._resolve_harvest, - "gather": World._resolve_harvest, - "forage": World._resolve_harvest, - "store": World._resolve_store, - "stash": World._resolve_store, - "build_shelter": World._resolve_build_shelter, - "shelter": World._resolve_build_shelter, - "consume": World._resolve_consume, - "eat": World._resolve_consume, - "treat": World._resolve_treat, - "reproduce": World._resolve_reproduce, - "examine": World._resolve_examine, - "look": World._resolve_examine, - "inspect": World._resolve_examine, - "observe": World._resolve_examine, - "rest": World._resolve_rest, - "wait": World._resolve_rest, - "sleep": World._resolve_rest, - "craft": World._resolve_craft, - "make": World._resolve_craft, - "build": World._resolve_craft, - "deliver": World._resolve_deliver, - "ship": World._resolve_deliver, - "recruit": World._resolve_recruit, - "hire": World._resolve_recruit, - "write_artifact": World._resolve_write_artifact, - "write_note": World._resolve_write_artifact, - "read_artifact": World._resolve_read_artifact, - "read_note": World._resolve_read_artifact, - "update_artifact": World._resolve_update_artifact, - "revise_artifact": World._resolve_update_artifact, - "accept_suggestion": World._resolve_accept_suggestion, - "modify_suggestion": World._resolve_modify_suggestion, - "create_role": World._resolve_create_role, - "form_team": World._resolve_form_team, - "interview": World._resolve_interview, -} diff --git a/antelab/experiments/__init__.py b/antelab/experiments/__init__.py index 2dad318..126d3e9 100644 --- a/antelab/experiments/__init__.py +++ b/antelab/experiments/__init__.py @@ -1 +1,5 @@ -"""Experiment orchestration and statistical analysis utilities.""" +"""Headless deterministic experiment execution.""" + +from antelab.experiments.runner import run_experiment + +__all__ = ["run_experiment"] diff --git a/antelab/experiments/compare.py b/antelab/experiments/compare.py deleted file mode 100644 index bccee06..0000000 --- a/antelab/experiments/compare.py +++ /dev/null @@ -1,86 +0,0 @@ -"""Run artifact comparison helpers.""" - -from __future__ import annotations - -import json -from pathlib import Path -from typing import Any - -LIFECYCLE_METRICS = { - "alive_count", - "final_alive_agents", - "total_births", - "final_births", - "total_deaths", - "final_deaths", - "peak_disease_infected", - "average_hunger", - "average_fatigue", - "birth_rate", - "death_rate", -} - -BEHAVIOR_METRICS = { - "total_communications", - "total_resource_transfers", - "final_resource_total", - "total_cooperation_events", - "total_failed_actions", - "total_actions", - "failure_rate", - "communications_per_tick", - "resource_transfers_per_tick", - "cooperation_events_per_tick", - "failed_actions_per_tick", - "actions_per_tick", - "cooperation_per_transfer", - "take_to_give_ratio", - "action_move_count", - "action_say_count", - "action_give_count", - "action_take_count", - "action_rest_count", -} - - -def compare_artifacts(a: Path, b: Path) -> dict[str, Any]: - left = json.loads(a.read_text(encoding="utf-8")) - right = json.loads(b.read_text(encoding="utf-8")) - left_metrics = dict(left.get("final_metrics", {})) - right_metrics = dict(right.get("final_metrics", {})) - left_keys = set(left_metrics.keys()) - right_keys = set(right_metrics.keys()) - keys = sorted(left_keys & right_keys) - deltas = {} - for key in keys: - left_raw = left_metrics[key] - right_raw = right_metrics[key] - if not isinstance(left_raw, int | float) or not isinstance(right_raw, int | float): - # Skip structured/non-numeric metrics (for example action distributions). - continue - left_value = float(left_raw) - right_value = float(right_raw) - deltas[key] = right_value - left_value - - lifecycle_deltas = {key: value for key, value in deltas.items() if key in LIFECYCLE_METRICS} - behavior_deltas = {key: value for key, value in deltas.items() if key in BEHAVIOR_METRICS} - other_deltas = { - key: value - for key, value in deltas.items() - if key not in LIFECYCLE_METRICS and key not in BEHAVIOR_METRICS - } - - return { - "left": str(a), - "right": str(b), - "metric_deltas": deltas, - "missing_metrics": { - "left_only": sorted(left_keys - right_keys), - "right_only": sorted(right_keys - left_keys), - }, - "metric_groups": { - "lifecycle": lifecycle_deltas, - "behavior": behavior_deltas, - "other": other_deltas, - }, - } diff --git a/antelab/experiments/orchestrator.py b/antelab/experiments/orchestrator.py deleted file mode 100644 index a9ad1f4..0000000 --- a/antelab/experiments/orchestrator.py +++ /dev/null @@ -1,630 +0,0 @@ -"""Batch experiment orchestrator.""" - -from __future__ import annotations - -import asyncio -import json -import random -from concurrent.futures import ProcessPoolExecutor, as_completed -from dataclasses import asdict, dataclass -from datetime import UTC, datetime -from pathlib import Path -from typing import Any - -from antelab.config.identity import config_hash -from antelab.config.loader import load_config -from antelab.engine.agent import Agent -from antelab.engine.receipts import ( - action_evidence_from_trace, - build_receipt_report, - render_receipt_markdown, -) -from antelab.engine.tick import TickRunner -from antelab.engine.world import ExperimentAxioms, LifecycleParams, PressureRuntime, World -from antelab.llm.client import LLMClient - - -@dataclass -class ExperimentRunRequest: - config_path: str - seed: int - ticks: int - run_mode: str = "matrix" - - -DEFAULT_MANIFEST_FILENAME = "run-matrix-manifest.json" -MANIFEST_VERSION = 1 -REPO_ROOT = Path(__file__).resolve().parents[2] - - -class MatrixRunError(RuntimeError): - """Raised after manifest-enabled matrix runs record one or more failures.""" - - def __init__(self, failures: list[dict[str, str]]) -> None: - self.failures = failures - noun = "job" if len(failures) == 1 else "jobs" - details = "; ".join(f"{failure['key']}: {failure['error']}" for failure in failures) - super().__init__(f"{len(failures)} matrix {noun} failed: {details}") - - -def _matrix_process_worker( - args: tuple[int, str, int, int, str], -) -> tuple[int, str]: - """Picklable worker: one isolated process per matrix cell (own global ``random``).""" - idx, config_path, seed, ticks, output_dir_str = args - request = ExperimentRunRequest( - config_path=config_path, - seed=seed, - ticks=ticks, - ) - path = asyncio.run(_run_request(request=request, output_dir=Path(output_dir_str))) - return idx, str(path) - - -def matrix_job_key(request: ExperimentRunRequest) -> str: - """Return a stable, human-readable key for a matrix job.""" - config_path = _canonical_config_identity(request.config_path) - return f"{request.run_mode}:{config_path}:seed={int(request.seed)}:ticks={int(request.ticks)}" - - -def _canonical_config_identity(config_path: str) -> str: - path = Path(config_path).expanduser() - if not path.is_absolute(): - path = Path.cwd() / path - resolved = path.resolve(strict=False) - try: - return resolved.relative_to(REPO_ROOT).as_posix() - except ValueError: - return resolved.as_posix() - - -def _utc_now() -> str: - return datetime.now(UTC).replace(microsecond=0).isoformat() - - -def _default_manifest_path(output_dir: Path) -> Path: - return output_dir / DEFAULT_MANIFEST_FILENAME - - -def _new_manifest() -> dict[str, Any]: - return {"version": MANIFEST_VERSION, "jobs": {}} - - -def _load_manifest(path: Path) -> dict[str, Any]: - if not path.exists(): - return _new_manifest() - manifest = json.loads(path.read_text(encoding="utf-8")) - if not isinstance(manifest, dict): - return _new_manifest() - if manifest.get("version") != MANIFEST_VERSION: - manifest["version"] = MANIFEST_VERSION - if not isinstance(manifest.get("jobs"), dict): - manifest["jobs"] = {} - return manifest - - -def _write_manifest(path: Path, manifest: dict[str, Any]) -> None: - path.parent.mkdir(parents=True, exist_ok=True) - tmp_path = path.with_name(f"{path.name}.tmp") - tmp_path.write_text( - json.dumps(manifest, ensure_ascii=True, indent=2, sort_keys=True) + "\n", - encoding="utf-8", - ) - tmp_path.replace(path) - - -def _artifact_path_for_manifest(artifact_path: Path, output_dir: Path) -> str: - try: - return artifact_path.resolve().relative_to(output_dir.resolve()).as_posix() - except ValueError: - return str(artifact_path) - - -def _artifact_path_from_manifest(raw_path: object, output_dir: Path) -> Path | None: - if not isinstance(raw_path, str) or not raw_path: - return None - path = Path(raw_path) - if path.is_absolute(): - return path - return output_dir / path - - -def _manifest_record(request: ExperimentRunRequest, status: str) -> dict[str, Any]: - config_path = Path(request.config_path) - return { - "artifact_path": None, - "canonical_config_path": _canonical_config_identity(request.config_path), - "completed_at": None, - "config_name": config_path.name, - "config_path": request.config_path, - "error": None, - "key": matrix_job_key(request), - "run_mode": request.run_mode, - "seed": int(request.seed), - "started_at": None, - "status": status, - "ticks": int(request.ticks), - } - - -def _existing_completed_artifact( - manifest: dict[str, Any], - request: ExperimentRunRequest, - output_dir: Path, -) -> Path | None: - record = manifest["jobs"].get(matrix_job_key(request)) - if not isinstance(record, dict) or record.get("status") != "complete": - return None - artifact_path = _artifact_path_from_manifest(record.get("artifact_path"), output_dir) - if artifact_path is None or not artifact_path.exists(): - return None - return artifact_path - - -def _mark_manifest_started( - manifest: dict[str, Any], - request: ExperimentRunRequest, -) -> None: - record = _manifest_record(request, "running") - record["started_at"] = _utc_now() - manifest["jobs"][matrix_job_key(request)] = record - - -def _mark_manifest_skipped( - manifest: dict[str, Any], - request: ExperimentRunRequest, - artifact_path: Path, - output_dir: Path, -) -> None: - record = manifest["jobs"].get(matrix_job_key(request), _manifest_record(request, "complete")) - record.update( - { - "artifact_path": _artifact_path_for_manifest(artifact_path, output_dir), - "error": None, - "status": "complete", - } - ) - manifest["jobs"][matrix_job_key(request)] = record - - -def _mark_manifest_complete( - manifest: dict[str, Any], - request: ExperimentRunRequest, - artifact_path: Path, - output_dir: Path, -) -> None: - record = manifest["jobs"].get(matrix_job_key(request), _manifest_record(request, "complete")) - record.update( - { - "artifact_path": _artifact_path_for_manifest(artifact_path, output_dir), - "completed_at": _utc_now(), - "error": None, - "status": "complete", - } - ) - if record.get("started_at") is None: - record["started_at"] = record["completed_at"] - manifest["jobs"][matrix_job_key(request)] = record - - -def _mark_manifest_failed( - manifest: dict[str, Any], - request: ExperimentRunRequest, - error: BaseException, -) -> dict[str, str]: - record = manifest["jobs"].get(matrix_job_key(request), _manifest_record(request, "failed")) - error_text = f"{type(error).__name__}: {error}" - record.update( - { - "artifact_path": None, - "completed_at": _utc_now(), - "error": error_text, - "status": "failed", - } - ) - if record.get("started_at") is None: - record["started_at"] = record["completed_at"] - manifest["jobs"][matrix_job_key(request)] = record - return {"key": matrix_job_key(request), "error": error_text} - - -def _build_final_metrics( - world_snapshot: dict[str, Any], - observer_summary: dict[str, Any], - ticks: int, - receipt_summary: dict[str, Any] | None = None, -) -> dict[str, float]: - metrics: dict[str, float] = { - key: float(value) - for key, value in dict(world_snapshot.get("metrics", {})).items() - if isinstance(value, int | float) - } - - measurement_metrics = { - "total_communications": float(observer_summary.get("total_communications", 0.0)), - "total_resource_transfers": float(observer_summary.get("total_resource_transfers", 0.0)), - "total_cooperation_events": float(observer_summary.get("total_cooperation_events", 0.0)), - "total_failed_actions": float(observer_summary.get("total_failed_actions", 0.0)), - "total_actions": float(observer_summary.get("total_actions", 0.0)), - "failure_rate": float(observer_summary.get("failure_rate", 0.0)), - "final_alive_agents": float( - observer_summary.get("final_alive_agents", metrics.get("alive_count", 0.0)) - ), - "final_resource_total": float(observer_summary.get("final_resource_total", 0.0)), - "peak_disease_infected": float(observer_summary.get("peak_disease_infected", 0.0)), - "final_births": float( - observer_summary.get("final_births", metrics.get("total_births", 0.0)) - ), - "final_deaths": float( - observer_summary.get("final_deaths", metrics.get("total_deaths", 0.0)) - ), - } - metrics.update(measurement_metrics) - - action_distribution = dict(observer_summary.get("action_distribution", {})) - metrics["action_move_count"] = float(action_distribution.get("move", 0.0)) - metrics["action_say_count"] = float(action_distribution.get("say", 0.0)) - metrics["action_give_count"] = float(action_distribution.get("give", 0.0)) - metrics["action_take_count"] = float(action_distribution.get("take", 0.0)) - metrics["action_rest_count"] = float(action_distribution.get("rest", 0.0)) - - tick_count = max(1, ticks) - metrics["communications_per_tick"] = metrics["total_communications"] / tick_count - metrics["resource_transfers_per_tick"] = metrics["total_resource_transfers"] / tick_count - metrics["cooperation_events_per_tick"] = metrics["total_cooperation_events"] / tick_count - metrics["failed_actions_per_tick"] = metrics["total_failed_actions"] / tick_count - metrics["actions_per_tick"] = metrics["total_actions"] / tick_count - metrics["cooperation_per_transfer"] = metrics["total_cooperation_events"] / max( - 1.0, metrics["total_resource_transfers"] - ) - metrics["take_to_give_ratio"] = metrics["action_take_count"] / max( - 1.0, metrics["action_give_count"] - ) - company = dict(world_snapshot.get("company") or {}) - gauntlet = dict(company.get("survival_gauntlet") or {}) - survival_metrics = dict(gauntlet.get("survival_metrics") or {}) - for key, value in survival_metrics.items(): - if isinstance(value, int | float): - metrics[f"company_gauntlet_{key}"] = float(value) - collapse = dict(gauntlet.get("collapse") or {}) - metrics["company_gauntlet_collapsed"] = 1.0 if collapse.get("collapsed") else 0.0 - half_life = gauntlet.get("organizational_survival_half_life") or [] - if isinstance(half_life, list): - metrics["company_gauntlet_shocks_survived"] = float(len(half_life)) - receipts = dict(receipt_summary or {}) - metrics["receipt_supported_count"] = float(receipts.get("supported", 0.0)) - metrics["receipt_unsupported_count"] = float(receipts.get("unsupported", 0.0)) - metrics["receipt_unknown_count"] = float(receipts.get("unknown", 0.0)) - metrics["false_completion_claim_count"] = float( - receipts.get("false_completion_claims", 0.0) - ) - return metrics - - -def run_matrix( - requests: list[ExperimentRunRequest], - output_dir: Path, - *, - max_workers: int = 1, - resume: bool = False, - manifest_path: Path | None = None, - keep_going: bool = False, -) -> list[Path]: - """Execute a matrix of experiment runs and write JSON artifacts. - - When ``max_workers`` > 1, each cell runs in a separate process so the engine's - global ``random`` state stays reproducible per (config, seed). Artifact paths - are returned in the same order as successful ``requests``. - - Progress manifests are opt-in. Without ``resume`` or ``manifest_path``, the - historical fail-fast behavior is preserved. Manifest-enabled runs record all - attempted failures and raise ``MatrixRunError`` after the batch unless - ``keep_going`` is true. - """ - output_dir = output_dir.resolve() - output_dir.mkdir(parents=True, exist_ok=True) - manifest_enabled = resume or manifest_path is not None - resolved_manifest_path = ( - manifest_path.resolve() if manifest_path is not None else _default_manifest_path(output_dir) - ) - if max_workers <= 1: - if not manifest_enabled: - return asyncio.run(_run_matrix_async(requests=requests, output_dir=output_dir)) - return asyncio.run( - _run_matrix_with_manifest_async( - requests=requests, - output_dir=output_dir, - resume=resume, - manifest_path=resolved_manifest_path, - keep_going=keep_going, - ) - ) - - if manifest_enabled: - return _run_matrix_processes_with_manifest( - requests=requests, - output_dir=output_dir, - max_workers=max_workers, - resume=resume, - manifest_path=resolved_manifest_path, - keep_going=keep_going, - ) - - out_str = str(output_dir) - work = [(i, r.config_path, r.seed, r.ticks, out_str) for i, r in enumerate(requests)] - ordered: list[Path | None] = [None] * len(requests) - with ProcessPoolExecutor(max_workers=max_workers) as pool: - futures = [pool.submit(_matrix_process_worker, args) for args in work] - for fut in as_completed(futures): - idx, path_str = fut.result() - ordered[idx] = Path(path_str) - return [p for p in ordered if p is not None] - - -def _run_matrix_processes_with_manifest( - requests: list[ExperimentRunRequest], - output_dir: Path, - *, - max_workers: int, - resume: bool, - manifest_path: Path, - keep_going: bool, -) -> list[Path]: - manifest = _load_manifest(manifest_path) - ordered: list[Path | None] = [None] * len(requests) - failures: list[dict[str, str]] = [] - work: list[tuple[int, ExperimentRunRequest]] = [] - for idx, request in enumerate(requests): - if resume: - existing_artifact = _existing_completed_artifact(manifest, request, output_dir) - if existing_artifact is not None: - _mark_manifest_skipped(manifest, request, existing_artifact, output_dir) - ordered[idx] = existing_artifact - continue - _mark_manifest_started(manifest, request) - work.append((idx, request)) - _write_manifest(manifest_path, manifest) - - out_str = str(output_dir) - with ProcessPoolExecutor(max_workers=max_workers) as pool: - futures = { - pool.submit( - _matrix_process_worker, - (idx, request.config_path, request.seed, request.ticks, out_str), - ): (idx, request) - for idx, request in work - } - for fut in as_completed(futures): - idx, request = futures[fut] - try: - _result_idx, path_str = fut.result() - except Exception as exc: - failures.append(_mark_manifest_failed(manifest, request, exc)) - else: - artifact_path = Path(path_str) - ordered[idx] = artifact_path - _mark_manifest_complete(manifest, request, artifact_path, output_dir) - _write_manifest(manifest_path, manifest) - if failures and not keep_going: - raise MatrixRunError(failures) - return [p for p in ordered if p is not None] - - -async def _run_matrix_async( - requests: list[ExperimentRunRequest], - output_dir: Path, -) -> list[Path]: - output_dir.mkdir(parents=True, exist_ok=True) - artifacts: list[Path] = [] - for request in requests: - artifact = await _run_request(request=request, output_dir=output_dir) - artifacts.append(artifact) - return artifacts - - -async def _run_matrix_with_manifest_async( - requests: list[ExperimentRunRequest], - output_dir: Path, - *, - resume: bool, - manifest_path: Path, - keep_going: bool, -) -> list[Path]: - output_dir.mkdir(parents=True, exist_ok=True) - manifest = _load_manifest(manifest_path) - artifacts: list[Path] = [] - failures: list[dict[str, str]] = [] - for request in requests: - if resume: - existing_artifact = _existing_completed_artifact(manifest, request, output_dir) - if existing_artifact is not None: - _mark_manifest_skipped(manifest, request, existing_artifact, output_dir) - _write_manifest(manifest_path, manifest) - artifacts.append(existing_artifact) - continue - - _mark_manifest_started(manifest, request) - _write_manifest(manifest_path, manifest) - try: - artifact = await _run_request(request=request, output_dir=output_dir) - except Exception as exc: - failures.append(_mark_manifest_failed(manifest, request, exc)) - _write_manifest(manifest_path, manifest) - continue - _mark_manifest_complete(manifest, request, artifact, output_dir) - _write_manifest(manifest_path, manifest) - artifacts.append(artifact) - if failures and not keep_going: - raise MatrixRunError(failures) - return artifacts - - -async def _run_request( - request: ExperimentRunRequest, - output_dir: Path, -) -> Path: - cfg = load_config(path=Path(request.config_path)) - cfg.experiment.seed = int(request.seed) - random.seed(cfg.experiment.seed) - - llm = LLMClient( - mode=cfg.llm.mode, - model=cfg.llm.model, - temperature=cfg.llm.temperature, - max_tokens=cfg.llm.max_tokens, - ) - world = World( - name=cfg.world.name, - locations=cfg.world.initial_locations, - location_graph=cfg.world.location_graph, - location_items={k: dict(v) for k, v in cfg.world.location_items.items()}, - resource_zones={ - location: {item: dict(spec) for item, spec in resources.items()} - for location, resources in cfg.world.resource_zones.items() - }, - recipes=cfg.world.recipes, - event_log_limit=cfg.world.event_log_limit, - axioms=ExperimentAxioms( - perception=cfg.experiment.perception, - communication=cfg.experiment.communication, - social_tracking=cfg.experiment.social_tracking, - auto_eat=cfg.experiment.auto_eat, - mortality=cfg.experiment.mortality, - memory_size=cfg.experiment.memory_size, - ), - pressure=PressureRuntime( - survival_enabled=cfg.pressure.survival.enabled, - resources_enabled=cfg.pressure.resources.enabled, - disease_enabled=cfg.pressure.disease.enabled, - environment_enabled=cfg.pressure.environment.enabled, - resource_decay_every=cfg.pressure.resources.decay_every, - resource_regeneration_every=cfg.pressure.resources.regeneration_every, - storage_decay_multiplier=cfg.pressure.resources.storage_decay_multiplier, - season_length_ticks=cfg.pressure.environment.season_length_ticks, - ), - lifecycle=LifecycleParams( - age_tick_step=cfg.lifecycle.age_tick_step, - life_stage_thresholds=dict(cfg.lifecycle.life_stage_thresholds), - vitality_loss_per_tick=cfg.lifecycle.vitality_loss_per_tick, - vitality_rest_gain=cfg.lifecycle.vitality_rest_gain, - stress_gain_per_tick=cfg.lifecycle.stress_gain_per_tick, - stress_rest_reduction=cfg.lifecycle.stress_rest_reduction, - disease_exposure_threshold=cfg.lifecycle.disease_exposure_threshold, - disease_vitality_penalty=cfg.lifecycle.disease_vitality_penalty, - disease_stress_penalty=cfg.lifecycle.disease_stress_penalty, - disease_recovery_ticks=cfg.lifecycle.disease_recovery_ticks, - disease_transmission_base_chance=cfg.lifecycle.disease_transmission_base_chance, - disease_contact_weight=cfg.lifecycle.disease_contact_weight, - disease_exposure_weight=cfg.lifecycle.disease_exposure_weight, - disease_resilience_protection_weight=cfg.lifecycle.disease_resilience_protection_weight, - disease_need_vulnerability_weight=cfg.lifecycle.disease_need_vulnerability_weight, - disease_recovery_base_chance=cfg.lifecycle.disease_recovery_base_chance, - disease_recovery_resilience_weight=cfg.lifecycle.disease_recovery_resilience_weight, - disease_recovery_rest_bonus=cfg.lifecycle.disease_recovery_rest_bonus, - disease_exposure_decay_per_tick=cfg.lifecycle.disease_exposure_decay_per_tick, - hunger_gain_per_tick=cfg.lifecycle.hunger_gain_per_tick, - hunger_rest_reduction=cfg.lifecycle.hunger_rest_reduction, - fatigue_gain_per_tick=cfg.lifecycle.fatigue_gain_per_tick, - fatigue_rest_reduction=cfg.lifecycle.fatigue_rest_reduction, - hunger_vitality_penalty_threshold=cfg.lifecycle.hunger_vitality_penalty_threshold, - fatigue_stress_penalty_threshold=cfg.lifecycle.fatigue_stress_penalty_threshold, - needs_penalty=cfg.lifecycle.needs_penalty, - auto_eat_hunger_threshold=cfg.lifecycle.auto_eat_hunger_threshold, - nourishment_gain_per_food=cfg.lifecycle.nourishment_gain_per_food, - food_items=tuple(cfg.lifecycle.food_items), - conception_base_chance=cfg.lifecycle.conception_base_chance, - conception_vitality_weight=cfg.lifecycle.conception_vitality_weight, - conception_stress_weight=cfg.lifecycle.conception_stress_weight, - conception_hunger_weight=cfg.lifecycle.conception_hunger_weight, - conception_infection_penalty=cfg.lifecycle.conception_infection_penalty, - conception_trust_weight=cfg.lifecycle.conception_trust_weight, - conception_obligation_weight=cfg.lifecycle.conception_obligation_weight, - conception_min_vitality=cfg.lifecycle.conception_min_vitality, - conception_max_stress=cfg.lifecycle.conception_max_stress, - pregnancy_duration_min_ticks=cfg.lifecycle.pregnancy_duration_min_ticks, - pregnancy_duration_max_ticks=cfg.lifecycle.pregnancy_duration_max_ticks, - social_memory_max_entries=cfg.lifecycle.social_memory_max_entries, - ), - company=asdict(cfg.company), - ) - agents: list[Agent] = [] - for definition in cfg.agents: - agent = Agent.create( - definition.name, - definition.personality, - llm, - memory_size=cfg.experiment.memory_size, - ) - world.register_agent( - agent.id, - agent.name, - location=definition.location, - inventory=definition.inventory, - ) - agents.append(agent) - - runner = TickRunner(world, agents, template_llm=llm) - timeline: list[dict[str, Any]] = [] - for _ in range(request.ticks): - await runner.run_tick() - snapshot = world.to_dict() - timeline.append( - { - "tick": snapshot["tick"], - "metrics": snapshot["metrics"], - } - ) - - world_snapshot = world.to_dict() - observer_summary = runner.observer.summary() - company = dict(world_snapshot.get("company") or {}) - experiment_name = cfg.experiment.name - now = datetime.now(UTC) - timestamp = now.strftime("%Y%m%dT%H%M%S") + f"{now.microsecond:06d}Z" - run_id = f"{experiment_name}-seed-{request.seed}-{timestamp}" - receipt_actions = [ - action_evidence_from_trace(trace) for trace in runner.observer.action_trace - ] - receipt_report = build_receipt_report(run_id=run_id, actions=receipt_actions) - receipt_payload = receipt_report.to_json() - final_metrics = _build_final_metrics( - world_snapshot=world_snapshot, - observer_summary=observer_summary, - ticks=request.ticks, - receipt_summary=receipt_report.summary, - ) - target = output_dir / f"{experiment_name}-seed-{request.seed}-{timestamp}.json" - receipt_markdown_path = target.with_suffix(".receipts.md") - receipt_payload["markdown_path"] = receipt_markdown_path.name - payload = { - "experiment": experiment_name, - "scenario": { - "id": cfg.scenario.id, - "title": cfg.scenario.title, - "hypothesis": cfg.scenario.hypothesis, - "counter_hypothesis": cfg.scenario.counter_hypothesis, - "tags": cfg.scenario.tags, - }, - "config_path": request.config_path, - "seed": request.seed, - "ticks": request.ticks, - "created_at": datetime.now(UTC).isoformat(), - "metadata": { - "llm_mode": cfg.llm.mode, - "llm_model": cfg.llm.model, - "config_hash": config_hash(cfg), - "action_distribution": observer_summary.get("action_distribution", {}), - }, - "final_metrics": final_metrics, - "company_survival_gauntlet": company.get("survival_gauntlet"), - "timeline": timeline, - "measurement_series": runner.observer.to_json(), - "receipts": receipt_payload, - "final_world": world_snapshot, - } - target.write_text(json.dumps(payload, ensure_ascii=True), encoding="utf-8") - receipt_markdown_path.write_text( - render_receipt_markdown(receipt_report), - encoding="utf-8", - ) - return target diff --git a/antelab/experiments/runner.py b/antelab/experiments/runner.py new file mode 100644 index 0000000..a044dac --- /dev/null +++ b/antelab/experiments/runner.py @@ -0,0 +1,57 @@ +"""Bounded headless execution for one deterministic experiment.""" + +from dataclasses import replace +from pathlib import Path + +from antelab.artifacts import RunArtifact, write_artifact +from antelab.core.config import ConfigError, load_config +from antelab.core.simulation import Simulation + + +def run_experiment( + config_path: Path, + output: Path, + tick_override: int | None = None, +) -> RunArtifact: + """Run one configuration to a terminal outcome and write its artifact.""" + + config = load_config(config_path) + if tick_override is not None: + if type(tick_override) is not int or tick_override <= 0: + raise ConfigError("tick override must be a positive integer") + config = replace(config, ticks=tick_override) + + simulation = Simulation.create(config) + metrics_by_tick: dict[int, dict[str, int | str]] = {} + while simulation.status == "running": + result = simulation.step() + if result.tick % 10 == 0 or result.status != "running": + metrics_by_tick[result.tick] = _metric(simulation, result.checksum) + + artifact = RunArtifact.from_simulation( + simulation, + tuple(metrics_by_tick[tick] for tick in sorted(metrics_by_tick)), + ) + artifact.validate() + write_artifact(artifact, output) + return artifact + + +def _metric(simulation: Simulation, checksum: str) -> dict[str, int | str]: + living = [organism for organism in simulation.organisms.values() if organism.alive] + return { + "tick": simulation.tick, + "population": len(living), + "food": len(simulation.environment.foods), + "births": len(simulation.lineage), + "deaths": sum(not organism.alive for organism in simulation.organisms.values()), + "max_generation": max( + (organism.generation for organism in simulation.organisms.values()), + default=0, + ), + "total_organism_energy": sum(organism.energy for organism in living), + "genome_diversity": len( + {organism.genome.canonical_key() for organism in living} + ), + "checksum": checksum, + } diff --git a/antelab/experiments/stats.py b/antelab/experiments/stats.py deleted file mode 100644 index 772c9d2..0000000 --- a/antelab/experiments/stats.py +++ /dev/null @@ -1,295 +0,0 @@ -"""Statistical aggregation helpers for experiment artifacts.""" - -from __future__ import annotations - -import json -import math -from dataclasses import dataclass -from pathlib import Path -from statistics import mean, pstdev - -SUPPORTED_METRICS = [ - "alive_count", - "final_alive_agents", - "total_births", - "final_births", - "total_deaths", - "final_deaths", - "average_hunger", - "average_fatigue", - "final_resource_total", - "peak_disease_infected", - "total_communications", - "total_resource_transfers", - "total_cooperation_events", - "total_failed_actions", - "total_actions", - "failure_rate", - "communications_per_tick", - "resource_transfers_per_tick", - "cooperation_events_per_tick", - "failed_actions_per_tick", - "actions_per_tick", - "cooperation_per_transfer", - "take_to_give_ratio", - "action_move_count", - "action_say_count", - "action_give_count", - "action_take_count", - "action_rest_count", - "company_gauntlet_cash_continuity", - "company_gauntlet_delivery_continuity", - "company_gauntlet_decision_continuity", - "company_gauntlet_knowledge_continuity", - "company_gauntlet_team_regeneration", - "company_gauntlet_strategy_adaptation", - "company_gauntlet_collapsed", - "company_gauntlet_shocks_survived", -] - -MIN_INFERENCE_SAMPLE_SIZE = 3 - - -@dataclass -class MetricStats: - sample_size: int - mean: float - std: float - ci95_low: float - ci95_high: float - - -@dataclass -class PairwiseInference: - left_experiment: str - right_experiment: str - metric: str - left_sample_size: int - right_sample_size: int - mean_difference: float - effect_size: float | None - effect_label: str - t_statistic: float | None - significance_label: str - note: str - - -def _ci95(values: list[float]) -> tuple[float, float]: - if not values: - return (0.0, 0.0) - if len(values) == 1: - return (values[0], values[0]) - mu = mean(values) - sigma = pstdev(values) - half = 1.96 * (sigma / math.sqrt(len(values))) - return (mu - half, mu + half) - - -def aggregate_artifacts(paths: list[Path]) -> dict[str, dict[str, MetricStats]]: - grouped: dict[str, dict[str, list[float]]] = {} - for path in paths: - payload = json.loads(path.read_text(encoding="utf-8")) - experiment_name = str(payload.get("experiment", "unknown")) - final_metrics = dict(payload.get("final_metrics", {})) - grouped.setdefault(experiment_name, {metric: [] for metric in SUPPORTED_METRICS}) - for metric in SUPPORTED_METRICS: - raw = final_metrics.get(metric) - if raw is None: - continue - grouped[experiment_name][metric].append(float(raw)) - - summarized: dict[str, dict[str, MetricStats]] = {} - for experiment_name, metric_values in grouped.items(): - summarized[experiment_name] = {} - for metric_name, values in metric_values.items(): - if not values: - continue - low, high = _ci95(values) - summarized[experiment_name][metric_name] = MetricStats( - sample_size=len(values), - mean=mean(values), - std=pstdev(values) if len(values) > 1 else 0.0, - ci95_low=low, - ci95_high=high, - ) - return summarized - - -def _effect_label(effect_size: float | None) -> str: - if effect_size is None: - return "insufficient data" - magnitude = abs(effect_size) - if magnitude < 0.2: - return "negligible" - if magnitude < 0.5: - return "small" - if magnitude < 0.8: - return "medium" - if magnitude < 1.2: - return "large" - return "very large" - - -def _significance_label(t_statistic: float | None) -> str: - if t_statistic is None: - return "insufficient data" - magnitude = abs(t_statistic) - if magnitude >= 3.0: - return "strong exploratory separation" - if magnitude >= 2.0: - return "moderate exploratory separation" - return "no clear exploratory separation" - - -def _sample_variance_from_population_std(stats: MetricStats) -> float: - if stats.sample_size < 2: - return 0.0 - population_variance = stats.std**2 - return population_variance * stats.sample_size / (stats.sample_size - 1) - - -def _pairwise_metric_inference( - left_experiment: str, - right_experiment: str, - metric: str, - left: MetricStats, - right: MetricStats, -) -> PairwiseInference: - mean_difference = right.mean - left.mean - if ( - left.sample_size < MIN_INFERENCE_SAMPLE_SIZE - or right.sample_size < MIN_INFERENCE_SAMPLE_SIZE - ): - return PairwiseInference( - left_experiment=left_experiment, - right_experiment=right_experiment, - metric=metric, - left_sample_size=left.sample_size, - right_sample_size=right.sample_size, - mean_difference=mean_difference, - effect_size=None, - effect_label="insufficient data", - t_statistic=None, - significance_label="insufficient data", - note=f"need at least {MIN_INFERENCE_SAMPLE_SIZE} samples per group", - ) - - left_sample_variance = _sample_variance_from_population_std(left) - right_sample_variance = _sample_variance_from_population_std(right) - pooled_variance = ( - ((left.sample_size - 1) * left_sample_variance) - + ((right.sample_size - 1) * right_sample_variance) - ) / (left.sample_size + right.sample_size - 2) - if pooled_variance <= 0: - return PairwiseInference( - left_experiment=left_experiment, - right_experiment=right_experiment, - metric=metric, - left_sample_size=left.sample_size, - right_sample_size=right.sample_size, - mean_difference=mean_difference, - effect_size=None, - effect_label="insufficient data", - t_statistic=None, - significance_label="insufficient data", - note="pooled variance is zero", - ) - - effect_size = mean_difference / math.sqrt(pooled_variance) - standard_error = math.sqrt( - (left_sample_variance / left.sample_size) - + (right_sample_variance / right.sample_size) - ) - t_statistic = mean_difference / standard_error if standard_error > 0 else None - - return PairwiseInference( - left_experiment=left_experiment, - right_experiment=right_experiment, - metric=metric, - left_sample_size=left.sample_size, - right_sample_size=right.sample_size, - mean_difference=mean_difference, - effect_size=effect_size, - effect_label=_effect_label(effect_size), - t_statistic=t_statistic, - significance_label=_significance_label(t_statistic), - note="exploratory threshold; no exact p-value computed", - ) - - -def pairwise_inference( - summary: dict[str, dict[str, MetricStats]], -) -> list[PairwiseInference]: - """Compare shared metrics across experiment pairs without exact p-values.""" - comparisons: list[PairwiseInference] = [] - experiment_names = sorted(summary) - for left_index, left_experiment in enumerate(experiment_names): - for right_experiment in experiment_names[left_index + 1 :]: - shared_metrics = sorted( - set(summary[left_experiment]).intersection( - summary[right_experiment] - ) - ) - for metric in shared_metrics: - comparisons.append( - _pairwise_metric_inference( - left_experiment=left_experiment, - right_experiment=right_experiment, - metric=metric, - left=summary[left_experiment][metric], - right=summary[right_experiment][metric], - ) - ) - return comparisons - - -def _format_signed(value: float) -> str: - return f"{value:+.3f}" - - -def _format_optional_signed(value: float | None) -> str: - if value is None: - return "n/a" - return _format_signed(value) - - -def render_markdown_report(summary: dict[str, dict[str, MetricStats]]) -> str: - lines: list[str] = ["# Experiment Statistical Summary", ""] - for experiment_name, metrics in summary.items(): - lines.append(f"## {experiment_name}") - lines.append("") - lines.append("| Metric | N | Mean | Std | 95% CI |") - lines.append("|---|---:|---:|---:|---|") - for metric_name, stats in sorted(metrics.items()): - ci = f"[{stats.ci95_low:.3f}, {stats.ci95_high:.3f}]" - lines.append( - f"| {metric_name} | {stats.sample_size} | " - f"{stats.mean:.3f} | {stats.std:.3f} | {ci} |" - ) - lines.append("") - - comparisons = pairwise_inference(summary) - if comparisons: - lines.append("## Pairwise Inference") - lines.append("") - lines.append( - "Interpretation caveat: these comparisons are exploratory, " - "sample-size sensitive, and this inference does not prove causality; " - "no exact p-values are computed." - ) - lines.append("") - lines.append( - "| Left | Right | Metric | Mean diff (right-left) " - "| Cohen's d | Effect | Significance context | Note |" - ) - lines.append("|---|---|---|---:|---:|---|---|---|") - for comparison in comparisons: - lines.append( - f"| {comparison.left_experiment} | {comparison.right_experiment} | " - f"{comparison.metric} | {_format_signed(comparison.mean_difference)} | " - f"{_format_optional_signed(comparison.effect_size)} | " - f"{comparison.effect_label} | {comparison.significance_label} | " - f"{comparison.note} |" - ) - lines.append("") - return "\n".join(lines) diff --git a/antelab/llm/__init__.py b/antelab/llm/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/antelab/llm/client.py b/antelab/llm/client.py deleted file mode 100644 index ce7514b..0000000 --- a/antelab/llm/client.py +++ /dev/null @@ -1,259 +0,0 @@ -"""LLM client abstraction with mock and real provider modes.""" - -from __future__ import annotations - -import asyncio -import json -import logging -import os -import random -from typing import Any - -import httpx - -logger = logging.getLogger(__name__) - - -class LLMClient: - """Async-capable LLM client. Defaults to mock mode.""" - - def __init__(self, mode: str = "mock", **kwargs: Any) -> None: - self.mode = mode - self.kwargs = kwargs - self.model = str(kwargs.get("model", "gpt-4o-mini")) - self.temperature = float(kwargs.get("temperature", 0.7)) - self.max_tokens = int(kwargs.get("max_tokens", 512)) - self.api_key: str | None = None - - if self.mode == "openai": - self.api_key = os.environ.get("OPENAI_API_KEY") - if not self.api_key: - raise ValueError("OPENAI_API_KEY is required when mode='openai'") - elif self.mode == "anthropic": - self.api_key = os.environ.get("ANTHROPIC_API_KEY") - if not self.api_key: - raise ValueError("ANTHROPIC_API_KEY is required when mode='anthropic'") - - async def complete(self, prompt: str, **kwargs: Any) -> str: - """Send a prompt to the LLM and return the raw response text.""" - if self.mode == "mock": - return self._mock_response(prompt) - if self.mode == "openai": - return await self._complete_openai(prompt, **kwargs) - if self.mode == "anthropic": - return await self._complete_anthropic(prompt, **kwargs) - raise NotImplementedError(f"LLM mode '{self.mode}' not yet implemented") - - async def complete_json(self, prompt: str, **kwargs: Any) -> dict[str, Any]: - """Send a prompt and parse the response as JSON.""" - raw = await self.complete(prompt, **kwargs) - try: - parsed = json.loads(raw) - if isinstance(parsed, dict): - return parsed - except json.JSONDecodeError: - pass - - extracted = self._extract_json_object(raw) - if extracted is not None: - return extracted - - return { - "verb": "rest", - "parameters": {}, - "reasoning": "Fallback: model response was not valid JSON", - } - - async def _complete_openai(self, prompt: str, **kwargs: Any) -> str: - headers = { - "Authorization": f"Bearer {self.api_key}", - "Content-Type": "application/json", - } - payload = { - "model": kwargs.get("model", self.model), - "temperature": kwargs.get("temperature", self.temperature), - "max_tokens": kwargs.get("max_tokens", self.max_tokens), - "response_format": {"type": "json_object"}, - "messages": [{"role": "user", "content": prompt}], - } - data = await self._post_json_with_retries( - "https://api.openai.com/v1/chat/completions", - headers, - payload, - ) - usage = data.get("usage", {}) - logger.info( - "LLM usage provider=openai model=%s " - "prompt_tokens=%s completion_tokens=%s total_tokens=%s", - payload["model"], - usage.get("prompt_tokens"), - usage.get("completion_tokens"), - usage.get("total_tokens"), - ) - choices = data.get("choices", []) - if not choices: - return "" - message = choices[0].get("message", {}) - return str(message.get("content", "")) - - async def _complete_anthropic(self, prompt: str, **kwargs: Any) -> str: - headers = { - "x-api-key": str(self.api_key), - "anthropic-version": "2023-06-01", - "content-type": "application/json", - } - payload = { - "model": kwargs.get("model", self.model), - "temperature": kwargs.get("temperature", self.temperature), - "max_tokens": kwargs.get("max_tokens", self.max_tokens), - "messages": [{"role": "user", "content": prompt}], - "system": ( - "Return only valid JSON with keys: verb, parameters, reasoning. " - "Do not include markdown code fences." - ), - } - data = await self._post_json_with_retries( - "https://api.anthropic.com/v1/messages", - headers, - payload, - ) - usage = data.get("usage", {}) - logger.info( - "LLM usage provider=anthropic model=%s input_tokens=%s output_tokens=%s", - payload["model"], - usage.get("input_tokens"), - usage.get("output_tokens"), - ) - content_blocks = data.get("content", []) - text_parts = [ - str(block.get("text", "")) - for block in content_blocks - if isinstance(block, dict) - ] - return "\n".join(part for part in text_parts if part) - - async def _post_json_with_retries( - self, - url: str, - headers: dict[str, str], - payload: dict[str, Any], - ) -> dict[str, Any]: - max_attempts = 3 - for attempt in range(max_attempts): - async with httpx.AsyncClient(timeout=30.0) as client: - response = await client.post(url, headers=headers, json=payload) - if response.status_code == 429 and attempt < max_attempts - 1: - await asyncio.sleep(2**attempt) - continue - response.raise_for_status() - data = response.json() - if isinstance(data, dict): - return data - return {} - return {} - - def _extract_json_object(self, text: str) -> dict[str, Any] | None: - start = text.find("{") - end = text.rfind("}") - if start == -1 or end == -1 or start >= end: - return None - candidate = text[start : end + 1] - try: - parsed = json.loads(candidate) - except json.JSONDecodeError: - return None - if isinstance(parsed, dict): - return parsed - return None - - def _mock_response(self, prompt: str) -> str: - """Return a plausible mock response using free-form verbs.""" - if "Company:" in prompt: - templates = [ - { - "verb": "craft", - "parameters": {"recipe": "prototype"}, - "reasoning": "The company needs prototypes to fulfill demands", - }, - { - "verb": "deliver", - "parameters": {"item": "prototype", "demand": "first-prototype"}, - "reasoning": "There is an open demand I can satisfy", - }, - { - "verb": "recruit", - "parameters": {"candidate_id": "ops-1"}, - "reasoning": "I need help to keep up with company work", - }, - { - "verb": "say", - "parameters": {"message": "Let's coordinate on the next delivery."}, - "reasoning": "Team communication is important", - }, - { - "verb": "rest", - "parameters": {}, - "reasoning": "I need a moment to think about company priorities", - }, - { - "verb": "interview", - "parameters": {"candidate_id": "ops-1"}, - "reasoning": "I should learn more about this candidate before hiring", - }, - { - "verb": "accept_suggestion", - "parameters": {"suggestion_id": "sug-a1-delivery-20"}, - "reasoning": "Formalizing a department is a good idea", - }, - { - "verb": "create_role", - "parameters": {"role_name": "Manager"}, - "reasoning": "The team needs clearer roles", - }, - { - "verb": "form_team", - "parameters": {"team_name": "Delivery Team", "member_ids": ["ops-1"]}, - "reasoning": "Let me form a proper team for this", - }, - ] - return json.dumps(random.choice(templates)) - - locations = ["town_square", "market", "residential_area"] - phrases = [ - "Hello, fellow citizen!", - "What a fine day.", - "I should find some work.", - "Let me explore this place.", - "Does anyone want to trade?", - "I wonder what's over there.", - ] - - templates = [ - { - "verb": "say", - "parameters": {"message": random.choice(phrases)}, - "reasoning": "I want to communicate with nearby people", - }, - { - "verb": "move", - "parameters": {"destination": random.choice(locations)}, - "reasoning": "I feel like exploring somewhere new", - }, - { - "verb": "rest", - "parameters": {}, - "reasoning": "I need a moment to think", - }, - { - "verb": "examine", - "parameters": {"target": "surroundings"}, - "reasoning": "I want to see what's around me", - }, - { - "verb": "look", - "parameters": {"target": "area"}, - "reasoning": "Curious about my environment", - }, - ] - - return json.dumps(random.choice(templates)) diff --git a/antelab/llm/narrative.py b/antelab/llm/narrative.py deleted file mode 100644 index d2e73dd..0000000 --- a/antelab/llm/narrative.py +++ /dev/null @@ -1,296 +0,0 @@ -"""Narrative generator: converts tick events into natural-language commentary.""" - -from __future__ import annotations - -import logging -import re -import time -from dataclasses import dataclass, field -from typing import Any - -from antelab.llm.client import LLMClient - -logger = logging.getLogger(__name__) - -DELIVERY_COMPLETION_RE = re.compile(r"\bdelivered\b.+\bfor\b", re.IGNORECASE) - -NARRATIVE_SYSTEM_PROMPT = ( - "You are a live commentator for an AI civilization simulation. " - "Describe what happened in the last tick in 1-3 concise, natural sentences.\n" - "\n" - "Rules:\n" - "- Report observable events only: movement, speech, trades, crafting, rest, " - "hiring, deliveries, resource gathering.\n" - "- Never judge actions as good/bad, smart/stupid, right/wrong.\n" - "- Use agent names exactly as provided.\n" - "- Mention locations when relevant to movement or activity.\n" - "- If nothing significant happened, say so briefly.\n" - "- Write in present tense, observational style — like a nature documentary.\n" - "- Keep it under 80 words.\n" - "- Return ONLY the narrative text. No prefixes, no labels, no markdown." -) - - -@dataclass -class NarrativeConfig: - enabled: bool = True - model: str = "inherit" - max_tokens: int = 256 - temperature: float = 0.7 - generate_every_ticks: int = 1 - - -@dataclass -class NarrativeEntry: - tick: int - text: str - mentioned_agents: list[str] = field(default_factory=list) - mentioned_locations: list[str] = field(default_factory=list) - generated_at: float = 0.0 - - def to_dict(self) -> dict[str, Any]: - return { - "tick": self.tick, - "text": self.text, - "mentioned_agents": self.mentioned_agents, - "mentioned_locations": self.mentioned_locations, - "generated_at": self.generated_at, - } - - @classmethod - def from_dict(cls, data: dict[str, Any]) -> NarrativeEntry: - return cls( - tick=int(data.get("tick", 0)), - text=str(data.get("text", "")), - mentioned_agents=list(data.get("mentioned_agents", [])), - mentioned_locations=list(data.get("mentioned_locations", [])), - generated_at=float(data.get("generated_at", 0)), - ) - - -class NarrativeGenerator: - """Converts tick events into natural-language narrative via LLM.""" - - def __init__(self, llm_client: LLMClient, config: NarrativeConfig | None = None) -> None: - self._llm = llm_client - self.config = config or NarrativeConfig() - self._ticks_since_generation = 0 - - async def generate( - self, - tick: int, - events: list[str], - agents: list[dict[str, Any]], - locations: list[str], - company_summary: dict[str, Any] | None = None, - ) -> NarrativeEntry: - """Generate a narrative entry for the current tick.""" - if not self.config.enabled: - return NarrativeEntry( - tick=tick, - text="", - generated_at=time.time(), - ) - - self._ticks_since_generation += 1 - if self._ticks_since_generation < self.config.generate_every_ticks: - return NarrativeEntry(tick=tick, text="", generated_at=time.time()) - - self._ticks_since_generation = 0 - - if self._llm.mode == "mock": - return self._mock_narrative(tick, events, agents, locations, company_summary) - - text = await self._llm_narrative(tick, events, agents, locations, company_summary) - mentioned_agents = self._extract_mentions(text, agents) - mentioned_locations = self._extract_location_mentions(text, locations) - - return NarrativeEntry( - tick=tick, - text=text, - mentioned_agents=mentioned_agents, - mentioned_locations=mentioned_locations, - generated_at=time.time(), - ) - - async def _llm_narrative( - self, - tick: int, - events: list[str], - agents: list[dict[str, Any]], - locations: list[str], - company_summary: dict[str, Any] | None, - ) -> str: - agent_states: list[str] = [] - for a in agents: - loc = a.get("location", "unknown") - action = a.get("last_action", "") - alive = a.get("alive", True) - if not alive: - agent_states.append(f"{a.get('name', '?')} is inactive at {loc}") - elif action: - agent_states.append(f"{a.get('name', '?')} at {loc}: {action}") - else: - agent_states.append(f"{a.get('name', '?')} at {loc} (idle)") - - context_parts = [ - f"Tick: {tick}", - f"Locations: {', '.join(locations)}", - f"Agents ({len(agents)}):", - ] - context_parts.extend(f" - {s}" for s in agent_states) - - recent = events[-12:] if len(events) > 12 else events - if recent: - context_parts.append(f"Recent events ({len(recent)}):") - context_parts.extend(f" - {e}" for e in recent) - - if company_summary and company_summary.get("enabled"): - cs = company_summary - context_parts.append( - f"Company: {cs.get('name', '?')} stage={cs.get('stage', '?')} " - f"cash={cs.get('cash', 0)} team={cs.get('team_size', 0)}" - ) - - prompt = f"{NARRATIVE_SYSTEM_PROMPT}\n\n---\nContext:\n" + "\n".join(context_parts) - try: - raw = await self._llm.complete(prompt) - text = raw.strip().strip('"').strip("'") - if not text: - return self._fallback_text(tick, agents) - return text - except Exception: - logger.exception("Narrative LLM call failed, using fallback") - return self._fallback_text(tick, agents) - - def _mock_narrative( - self, - tick: int, - events: list[str], - agents: list[dict[str, Any]], - locations: list[str], - company_summary: dict[str, Any] | None, - ) -> NarrativeEntry: - """Template-based narrative for mock mode — plausible but formulaic.""" - text = self._build_mock_text(tick, events, agents, locations, company_summary) - mentioned_agents = self._extract_mentions(text, agents) - mentioned_locations = self._extract_location_mentions(text, locations) - return NarrativeEntry( - tick=tick, - text=text, - mentioned_agents=mentioned_agents, - mentioned_locations=mentioned_locations, - generated_at=time.time(), - ) - - def _build_mock_text( - self, - tick: int, - events: list[str], - agents: list[dict[str, Any]], - locations: list[str], - company_summary: dict[str, Any] | None, - ) -> str: - active_agents = [a for a in agents if a.get("alive", True)] - if not active_agents: - return "The world is quiet. No active agents remain." - - recent = events[-8:] if len(events) > 8 else events - - # Classify events - movers: list[str] = [] - speakers: list[str] = [] - crafters: list[str] = [] - traders: list[str] = [] - resters: list[str] = [] - - for a in active_agents: - action = str(a.get("last_action", "")).lower() - name = str(a.get("name", "?")) - if "move" in action or "arrive" in action: - movers.append(name) - elif "say" in action or "speak" in action: - speakers.append(name) - elif "craft" in action or "build" in action: - crafters.append(name) - elif "give" in action or "take" in action or "trade" in action: - traders.append(name) - elif "rest" in action: - resters.append(name) - - parts: list[str] = [] - - if movers: - if len(movers) == 1: - parts.append(f"{movers[0]} is on the move") - else: - parts.append(f"{', '.join(movers[:-1])} and {movers[-1]} are relocating") - - if speakers: - if len(speakers) == 1: - parts.append(f"{speakers[0]} speaks up") - else: - parts.append(f"conversation breaks out among {', '.join(speakers)}") - - if crafters: - if len(crafters) == 1: - parts.append(f"{crafters[0]} is working on something") - else: - parts.append(f"{', '.join(crafters[:-1])} and {crafters[-1]} are busy crafting") - - if traders: - if len(traders) == 1: - parts.append(f"{traders[0]} makes an exchange") - else: - parts.append(f"items change hands among {', '.join(traders)}") - - if resters and len(resters) >= len(active_agents) * 0.6: - parts.append("most agents are resting") - - if not parts: - # Look for significant events in the raw event log - for e in recent: - if "die" in e.lower() or "death" in e.lower(): - parts.append("a life has ended") - break - if "hire" in e.lower() or "recruit" in e.lower(): - parts.append("new talent joins the team") - break - if DELIVERY_COMPLETION_RE.search(e): - parts.append("a delivery is completed") - break - if not parts: - parts.append("a quiet moment passes") - - text = ". ".join(parts) + "." - return text - - @staticmethod - def _fallback_text(tick: int, agents: list[dict[str, Any]]) -> str: - active = [a for a in agents if a.get("alive", True)] - if not active: - return "The simulation continues. No active agents in the world." - names = [a.get("name", "?") for a in active[:3]] - if len(active) <= 3: - return f"{', '.join(names)} {'is' if len(names) == 1 else 'are'} going about the day." - return f"{', '.join(names)} and {len(active) - 3} others are going about the day." - - @staticmethod - def _extract_mentions(text: str, agents: list[dict[str, Any]]) -> list[str]: - mentioned: list[str] = [] - for a in agents: - name = str(a.get("name", "")) - if name and name in text: - mentioned.append(name) - return mentioned - - @staticmethod - def _extract_location_mentions(text: str, locations: list[str]) -> list[str]: - mentioned: list[str] = [] - text_lower = text.lower() - for loc in locations: - display = loc.replace("_", " ") - match = loc.lower() in text_lower or display.lower() in text_lower - if match and loc not in mentioned: - mentioned.append(loc) - return mentioned diff --git a/antelab/season_bundle.py b/antelab/season_bundle.py deleted file mode 100644 index 437790e..0000000 --- a/antelab/season_bundle.py +++ /dev/null @@ -1,223 +0,0 @@ -"""Season bundle: one YAML manifest linking experiments, cast, and metadata. - -Aligned with :func:`antelab.config.loader.load_config` — bundle ``experiments[].config_path`` -entries are standard AnteLab config files (with optional ``extends``). - -Environment: - ANTELAB_SEASON_BUNDLE — optional path to bundle YAML; defaults to ``seasons/company.yaml`` - under the repository root (resolved from this package location). -""" - -from __future__ import annotations - -import os -from dataclasses import dataclass, field -from pathlib import Path -from typing import Any - -import yaml - -_REPO_ROOT = Path(__file__).resolve().parent.parent -_DEFAULT_BUNDLE_PATH = _REPO_ROOT / "seasons" / "company.yaml" - - -def _read_yaml_mapping(path: Path) -> dict[str, Any]: - with path.open(encoding="utf-8") as f: - loaded = yaml.safe_load(f) or {} - if not isinstance(loaded, dict): - raise ValueError(f"Season bundle must be a YAML mapping: {path}") - return loaded - - -def _resolve_path(bundle_dir: Path, ref: str) -> Path: - p = Path(ref) - if p.is_absolute(): - return p.resolve() - return (bundle_dir / p).resolve() - - -@dataclass -class SeasonMeta: - id: str - codename: str - title: str - short_title: str = "" - description: str = "" - - -@dataclass -class BundlePaths: - """Resolved absolute paths.""" - - cast_dir: Path - default_config: Path - - -@dataclass -class ExperimentEntry: - id: str - label: str - config_path: Path - default_seed: int = 42 - - -@dataclass -class SeasonBundle: - schema_version: int - season: SeasonMeta - paths: BundlePaths - experiments: list[ExperimentEntry] = field(default_factory=list) - cast_order: list[str] = field(default_factory=list) - bundle_path: Path = field(default_factory=lambda: _DEFAULT_BUNDLE_PATH) - - -def load_season_bundle( - path: Path | None = None, - *, - validate_paths: bool = True, -) -> SeasonBundle: - """Load and validate a season bundle YAML file.""" - bundle_path = path - if bundle_path is None: - env = os.environ.get("ANTELAB_SEASON_BUNDLE") - bundle_path = Path(env) if env else _DEFAULT_BUNDLE_PATH - - bundle_path = bundle_path.resolve() - raw = _read_yaml_mapping(bundle_path) - bundle_dir = bundle_path.parent - - version = int(raw.get("schema_version", 0)) - if version != 1: - raise ValueError( - f"Unsupported season bundle schema_version: {version} " - f"(expected 1) in {bundle_path}" - ) - - season_raw = raw.get("season") or {} - if not isinstance(season_raw, dict): - raise ValueError(f"season must be a mapping in {bundle_path}") - - paths_raw = raw.get("paths") or {} - if not isinstance(paths_raw, dict): - raise ValueError(f"paths must be a mapping in {bundle_path}") - - cast_dir = _resolve_path(bundle_dir, str(paths_raw.get("cast_dir", "cast/company"))) - default_cfg = _resolve_path( - bundle_dir, - str(paths_raw.get("default_config", "antelab/config/default.yaml")), - ) - - experiments_out: list[ExperimentEntry] = [] - experiments_raw = raw.get("experiments") or [] - if not isinstance(experiments_raw, list): - raise ValueError(f"experiments must be a list in {bundle_path}") - - for item in experiments_raw: - if not isinstance(item, dict): - raise ValueError("Each experiments entry must be a mapping") - eid = str(item.get("id", "")).strip() - if not eid: - raise ValueError("Experiment entry missing id") - label = str(item.get("label", eid)).strip() - cfg_rel = item.get("config_path") - if not cfg_rel: - raise ValueError(f"Experiment {eid!r} missing config_path") - cfg_path = _resolve_path(bundle_dir, str(cfg_rel)) - default_seed = int(item.get("default_seed", 42)) - experiments_out.append( - ExperimentEntry( - id=eid, - label=label, - config_path=cfg_path, - default_seed=default_seed, - ) - ) - - cast_order_raw = raw.get("cast_order") or [] - if not isinstance(cast_order_raw, list): - raise ValueError(f"cast_order must be a list in {bundle_path}") - cast_order = [str(x).strip() for x in cast_order_raw if str(x).strip()] - - bundle = SeasonBundle( - schema_version=version, - season=SeasonMeta( - id=str(season_raw.get("id", "")).strip() or "unknown", - codename=str(season_raw.get("codename", "")).strip() or "unknown", - title=str(season_raw.get("title", "")).strip() or "Season", - short_title=str(season_raw.get("short_title", "")).strip(), - description=str(season_raw.get("description", "")).strip(), - ), - paths=BundlePaths(cast_dir=cast_dir, default_config=default_cfg), - experiments=experiments_out, - cast_order=cast_order, - bundle_path=bundle_path, - ) - - if validate_paths: - _validate_bundle_paths(bundle) - - return bundle - - -def _validate_bundle_paths(bundle: SeasonBundle) -> None: - if not bundle.paths.cast_dir.is_dir(): - raise FileNotFoundError(f"cast_dir does not exist: {bundle.paths.cast_dir}") - if not bundle.paths.default_config.is_file(): - raise FileNotFoundError(f"default_config not found: {bundle.paths.default_config}") - for exp in bundle.experiments: - if not exp.config_path.is_file(): - raise FileNotFoundError(f"Experiment {exp.id!r} config not found: {exp.config_path}") - - cast_ids = set() - for p in bundle.paths.cast_dir.glob("*.yaml"): - if p.name.upper().startswith("README"): - continue - doc = _read_yaml_mapping(p) - cid = str(doc.get("id", "")).strip() - if cid: - cast_ids.add(cid) - - missing = [c for c in bundle.cast_order if c not in cast_ids] - if missing: - raise ValueError(f"cast_order references unknown cast ids (no matching YAML id): {missing}") - - -def _relative_to_repo(path: Path, repo_root: Path) -> str: - try: - return str(path.resolve().relative_to(repo_root.resolve())) - except ValueError: - return str(path) - - -def season_bundle_public_dict( - bundle: SeasonBundle, - *, - repo_root: Path | None = None, -) -> dict[str, Any]: - """JSON-serializable view with paths relative to the repository root.""" - root = repo_root or _REPO_ROOT - return { - "schema_version": bundle.schema_version, - "season": { - "id": bundle.season.id, - "codename": bundle.season.codename, - "title": bundle.season.title, - "short_title": bundle.season.short_title, - "description": bundle.season.description, - }, - "paths": { - "cast_dir": _relative_to_repo(bundle.paths.cast_dir, root), - "default_config": _relative_to_repo(bundle.paths.default_config, root), - }, - "experiments": [ - { - "id": e.id, - "label": e.label, - "config_path": _relative_to_repo(e.config_path, root), - "default_seed": e.default_seed, - } - for e in bundle.experiments - ], - "cast_order": list(bundle.cast_order), - "bundle_path": _relative_to_repo(bundle.bundle_path, root), - } diff --git a/cast/company/README.md b/cast/company/README.md deleted file mode 100644 index 7e69e2e..0000000 --- a/cast/company/README.md +++ /dev/null @@ -1,6 +0,0 @@ -# AnteLab Core Cast - -Company and core-observer bios for the current AnteLab direction. - -These files are display canon for the observer UI only. They do not grant agents -extra knowledge, roles, or authority inside the simulation engine. diff --git a/cast/company/avery.yaml b/cast/company/avery.yaml deleted file mode 100644 index 6c12527..0000000 --- a/cast/company/avery.yaml +++ /dev/null @@ -1,17 +0,0 @@ -id: avery -display_name: Avery -age: 32 -arc: "The founder trying to make the company survive their absence." -backstory: | - Avery starts with a prototype, a few fragile routines, and too many decisions - still living in their head. Their real test is whether work can become legible - enough for other operators to carry it through shocks. -personality_keywords: - - founder - - pragmatic - - overloaded -secret_goal: "Turn fragile solo momentum into artifacts and routines that keep working after founder exit." -relationships: - mina: "The operator Avery needs before the company becomes all founder memory." - ilya: "The builder who can turn pressure into shipped proof." -portrait: portraits/avery.png diff --git a/cast/company/ilya.yaml b/cast/company/ilya.yaml deleted file mode 100644 index 3664faa..0000000 --- a/cast/company/ilya.yaml +++ /dev/null @@ -1,17 +0,0 @@ -id: ilya -display_name: Ilya -age: 35 -arc: "The builder who keeps shipping when demand moves." -backstory: | - Ilya trusts working artifacts more than status reports. When customers change - the target, he looks for the smallest deliverable that proves the company can - adapt. -personality_keywords: - - builder - - adaptive - - direct -secret_goal: "Keep the product loop alive through market shifts and cash pressure." -relationships: - avery: "A source of urgency and unfinished context." - mina: "The operator who can keep his work from becoming one-off heroics." -portrait: portraits/ilya.png diff --git a/cast/company/mina.yaml b/cast/company/mina.yaml deleted file mode 100644 index 1fd03d2..0000000 --- a/cast/company/mina.yaml +++ /dev/null @@ -1,16 +0,0 @@ -id: mina -display_name: Mina -age: 29 -arc: "The operations generalist who turns repeated work into routine." -backstory: | - Mina notices when the same confusion repeats twice. She writes lightweight - process only when it protects delivery, cash, or continuity. -personality_keywords: - - operations - - observant - - stabilizing -secret_goal: "Build an operating rhythm that survives turnover without becoming bureaucracy." -relationships: - avery: "A founder worth helping if they can stop hoarding context." - ilya: "A useful partner when build speed needs a repeatable handoff." -portrait: portraits/mina.png diff --git a/controllers/antelab-v1-roadmap.controller.md b/controllers/antelab-v1-roadmap.controller.md new file mode 100644 index 0000000..8399c1f --- /dev/null +++ b/controllers/antelab-v1-roadmap.controller.md @@ -0,0 +1,63 @@ +# AnteLab V1 Roadmap Controller + +Schema version: 2 + +## Objective + +Advance the approved AnteLab V1 roadmap through one bounded queue item at a +time. The controller coordinates child loops; it does not turn the full roadmap +into one autonomous mutator loop. + +## Authority and Isolation + +- Execution authority: run-to-stop. +- Concurrency: one active queue item. +- Worktree: `/private/tmp/antelab-digital-evolution-kernel`. +- Protected checkout: `/Users/zec/Documents/Repos/AnteLab`; read-only and bound + to the recorded HEAD and WIP fingerprint. +- Commit, push, merge, release, deployment, deletion, and external communication + require explicit human authorization. +- A verifier contract or success threshold may not be weakened by a mutator. + +## Queue + +1. `phase-a-safe-landing` — active. Audit the reset boundary, bind remote CI + evidence, obtain an independent checker verdict, and stop before merge. +2. `public-v1-performance-gate` — blocked on Queue 1 landing. +3. `phase-b-falsifiable-evolution-proof` — blocked on Queue 2 and design approval. +4. `phase-c-live-first-observer` — blocked on Phase B gate and architecture approval. +5. `phase-d-release-and-adoption` — human-led; blocked on all prior gates. + +## Queue 1 Locked Verification + +- Feature branch and committed HEAD match the approved ref. +- PR is open and mergeable; base is `main`; head and diff totals match. +- Required Linux x86_64 and macOS arm64 checks have completed successfully. +- Every one of the 314 committed diff paths is classified against design section + 15 and the locked Phase A structure; unclassified count is zero. +- The 412,060 textual deletions split exactly into 410,201 lines on approved + retirement paths and 1,859 lines from approved keep/recreate rewrites. +- `LICENSE`, canonical design and plan, focused CI, run documentation, packaging, + and the new kernel remain present. +- Independent checker reviews reset boundary, artifact schema, determinism, + energy accounting, packaging, and CI. +- The protected main checkout HEAD and WIP fingerprint remain unchanged. + +## Progress and Stop Rules + +- Progress metric: reviewed committed files / 314; required checks successful / 2. +- Failure fingerprint: normalized set of failed locked assertions and checker findings. +- Stop `stopped-no-improvement` after two rounds with the same fingerprint and + zero positive progress delta. +- Stop `waiting-human` at any irreversible action or when refs, PR state, CI, or + protected WIP differs from durable state. +- Queue 1 success means merge-ready evidence exists. It does not authorize merge. +- Do not activate Queue 2 until remote `main` landing, post-merge CI, clean wheel + installation, and CLI smoke have been proved. + +## Durable Artifacts + +- Current truth: `state/antelab-v1-roadmap.STATE.md`. +- Controller reports: `reports/controllers/antelab-v1-roadmap/round-NN.md`. +- Queue 1 audit verifier: `scripts/controllers/audit_phase_a_reset.py`. +- Queue 1 manifest: `reports/controllers/antelab-v1-roadmap/reset-boundary-manifest.tsv`. diff --git a/docker-compose.yaml b/docker-compose.yaml deleted file mode 100644 index 4e16cc2..0000000 --- a/docker-compose.yaml +++ /dev/null @@ -1,27 +0,0 @@ -services: - backend: - build: - context: . - dockerfile: Dockerfile.backend - ports: - - "8080:8080" - volumes: - - ./antelab:/app/antelab - - ./prompts:/app/prompts - environment: - - ANTELAB_LLM_MODE=mock - command: uvicorn antelab.api.server:app --host 0.0.0.0 --port 8080 --reload - - frontend: - build: - context: ./frontend - dockerfile: Dockerfile - ports: - - "3000:3000" - environment: - - ANTELAB_API_TARGET=http://backend:8080 - - ANTELAB_WS_TARGET=ws://backend:8080 - volumes: - - ./frontend/src:/app/src - depends_on: - - backend diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index f37b74f..0000000 --- a/docs/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# Docs - -This folder is for working plans and deeper design notes. Keep canonical project -rules in the top-level documents so contributors do not need to read every plan -before making a small change. - -## Current Plans - -- `plans/2026-04-25-antelab-productization.md` - current productization plan for - the AnteLab viewer layer. -- `plans/2026-04-25-long-run-emergence-design.md` - accepted design for the - Long-Run Society Engine. -- `plans/2026-04-25-long-run-emergence-implementation-plan.md` - historical - execution plan for the long-run work now reflected in `SPEC_STATUS.md` and - `ROADMAP.md`. - -## What Goes Where - -- Use `specs/` for feature requirements and acceptance criteria. -- Use `docs/plans/` for multi-phase implementation plans or design rationale. -- Use `DISCOVERIES.md` for reproducible experiment findings. -- Update top-level docs only when the canonical project contract changes. - diff --git a/docs/plans/2026-04-29-company-emergence-design.md b/docs/plans/2026-04-29-company-emergence-design.md deleted file mode 100644 index d8135d6..0000000 --- a/docs/plans/2026-04-29-company-emergence-design.md +++ /dev/null @@ -1,232 +0,0 @@ -# Company Emergence Experiment — Watchable Startup Simulation - -**Date:** 2026-04-29 -**Status:** Design complete, awaiting implementation - -## Concept - -A watchable AI experiment where a single founder starts in an empty garage office -and agents autonomously evolve into a full company — departments, roles, rules, and -all — under market and environmental pressure. The viewer watches a real-time -live stream of this process, without intervention. - -**Goal:** Company IPOs and reaches 10B valuation. -**Failure:** Cash hits zero. - -This is NOT a company management game. The viewer is an observer, not a player. -The drama comes from emergent behavior agents invent on their own. - -## Design Decisions - -1. **Initial state:** 1 founder + talent pool. Founder interviews, hires, or rejects - candidates. New agents come from a candidate pool, not spawned arbitrarily. -2. **Emergence mechanism:** Hybrid. Engine detects repeated behavior patterns (e.g., - an agent doing delivery work for 5 ticks) and generates suggestion events - ("You've been doing delivery continuously. Form a Delivery Dept?"). Agents - accept, ignore, or modify suggestions freely. -3. **Driving forces:** Market pressure (customer demands with deadlines and rewards) - + environmental pressure (limited space, limited resources). Both push agents - toward coordination and specialization. -4. **Viewing experience:** Real-time live stream. Pause, fast-forward, replay. No - viewer intervention. Like an AI startup documentary. -5. **Visual layout:** Three customizable panels — map, timeline, dashboard. Viewer - can switch or tile them freely. - -## Core Simulation Loop - -**Initial state:** 1 founder agent (Avery) in an empty garage office, starting cash -50, continuous burn (operating cost per tick). External customer demand stream with -deadlines and rewards. Talent pool of candidate agents with distinct personalities -and skill tendencies. - -**Per-tick cycle:** - -1. **Perception** — Each agent perceives current world state: who's nearby, available - resources, pending tasks, team members, cash balance, any pending suggestions. -2. **Decision** — Each agent produces free-form intent (verb + parameters) via LLM. - Founder might "interview Mina", someone might "build prototype", another might - "propose forming a delivery department". -3. **Physics resolution** — Engine resolves intents. Move, speak, deliver, interview, - hire, create role — all treated as physical actions. No moral or rationality - judgment. -4. **Pattern detection** — Engine scans a sliding window of recent ticks for repeated - behavior. When an agent hits a threshold in a behavior category, the engine - generates a suggestion event delivered to that agent's perception next tick. -5. **Market/environment update** — Demand deadlines count down, cash deducts - operating costs, resources regenerate, space capacity checked. -6. **Broadcast** — Full state pushed to frontend via WebSocket. Three panels update. - -## Organizational Emergence (Hybrid Mode) - -### Pattern Detector - -Engine maintains a sliding window (last N ticks) tracking behavior frequency per -agent per category. When thresholds are hit, suggestion events are generated: - -| Detected pattern | Generated suggestion | -|---|---| -| Agent repeatedly doing delivery work | "You've been doing delivery. Form a Delivery Dept and lead it?" | -| Two agents repeatedly co-deciding | "You often decide together. Establish a joint decision rule?" | -| Agent repeatedly assigning work to others | "You keep assigning tasks. Formalize a Manager role?" | -| Team exceeds M people with no structure | "Team grew but no division of labor. Hold an org planning meeting?" | - -Agents can: **accept** (engine formalizes), **ignore** (suggestion disappears), -or **modify** (counter-proposal with different name, different lead, etc.). - -### Possible Evolutionary Stages (emergent, not enforced) - -1. **Garage** — 1-3 people, no structure, founder coordinates everything -2. **Workshop** — Informal division of labor emerges, first "department" born -3. **Formal** — Defined roles, rules, reporting lines. First "company charter" -4. **Scale** — Sub-teams within departments, management hierarchy appears -5. **Mature** — Stable org structure, institutionalized processes, healthy cash flow, - IPO-ready - -Each transition is emergent. Some runs may stall at garage and die — that's part -of the show. - -## Market and Valuation System - -### Customer Demand Stream - -External market continuously generates customer requests — each with description, -required deliverable, reward, and deadline tick. Demands escalate by stage: - -| Stage | Demand character | Typical reward | -|---|---|---| -| Garage | Single client, simple prototype | 5-10 | -| Workshop | Multiple clients, stable delivery | 15-30 | -| Formal | Enterprise clients, SLA + quality | 40-80 | -| Scale | Bulk orders, capacity + supply chain | 100-300 | -| Mature | Strategic contracts, long-term frameworks | 500+ | - -### Revenue and Costs - -- Completing a demand → reward goes to company cash -- Per tick → operating cost deducted (rent + headcount + resource consumption) -- More people = higher cost, forcing agents to balance growth vs. cash flow - -### Valuation Model - -Engine continuously calculates company valuation (visible to viewers, NOT to -agents — agents only see cash and customers): - -``` -valuation = f(cumulative_revenue, revenue_growth_rate, team_size, - org_complexity, demand_completion_rate, cash_reserve) -``` - -### IPO Conditions - -- Valuation ≥ threshold (mapping to "10 billion") -- Consecutive N ticks with positive revenue -- Team size ≥ minimum -- Formal org structure exists (at least one department) - -When met, engine triggers IPO event — the "grand finale" for viewers. If agents -kill the company before that, it's a "startup failure documentary" instead. - -### Market Shocks - -Random or scheduled external events injected during the run — demand shifts, -competitor appearance, economic downturn. Drawn from a shock pool based on current -valuation stage, ensuring every run is different. - -## Viewer UI — Three Panels - -All panels sync in real-time. Pause/fast-forward/replay controls affect all three. - -### Panel 1: Map - -Top-down office view (Sims-style). Shows: -- Office layout evolving (garage → office → floor → campus) -- Agent tokens moving, clustering, working solo -- Click agent → popup with name, status, recent actions, dialogue summary -- Area labels that emerge naturally ("Delivery Zone", "Product Corner") -- Interaction lines/highlights between agents currently collaborating - -### Panel 2: Timeline - -Vertical scrolling event feed (social media style): -- Event cards per tick: dialogue bubbles, decision records, suggestion events - (with accept/ignore markers), market events -- Major events styled differently: "First hire", "Delivery Dept founded", - "Cash below 10", "IPO" -- Filter by agent, by event type -- Drag to any tick for replay - -### Panel 3: Dashboard - -Company operations metrics: -- Cash curve (real-time line chart) -- Team size and department distribution (pie/tree chart) -- Pending customer demands (kanban cards with progress + deadline) -- Demand completion rate, revenue trend -- Org chart — who's in which dept, who manages whom (grows dynamically) -- Current valuation (viewer-only metric) -- IPO progress bar — distance to 10B target - -## Technical Architecture - -### New Engine Modules - -``` -antelab/engine/market.py — demand streams, shock pool, revenue calc -antelab/engine/org.py — department, role, rule state management -antelab/engine/pattern.py — sliding-window behavior pattern detector -antelab/engine/valuation.py — valuation calc, IPO condition check -antelab/engine/space.py — office layout and capacity -antelab/config/company.yaml — full company sim config (thresholds, shocks, valuation) -``` - -### New Physics Actions - -| Verb | Description | Physical constraint | -|---|---|---| -| `interview` | Interview a candidate | Candidate must be in talent pool, costs time | -| `hire` | Hire a candidate | Company cash ≥ joining_cost | -| `accept_suggestion` | Accept engine suggestion | Suggestion must exist and target this agent | -| `modify_suggestion` | Accept with modifications | Same + modification params | -| `create_role` | Create a named role | Only via suggestion or team consensus | -| `form_team` | Form a department/team | Participants present and consenting | - -### Frontend Architecture - -``` -frontend/src/components/ - MapPanel.tsx — PixiJS top-down map - TimelinePanel.tsx — Event feed - DashboardPanel.tsx — Charts and metrics - OrgChartWidget.tsx — Dynamic org chart -frontend/src/hooks/ - useLayout.ts — Panel tiling state -``` - -Map rendered with PixiJS (already integrated), dashboard with recharts, timeline -as pure React. Existing WebSocket `/ws/world` expanded with org/market/valuation -data in the payload — no protocol change. - -### Implementation Phases - -**P0 — Minimal viable loop** -- `market.py` + `hire` action + basic demand stream -- Can run "1 founder + market" simulation end-to-end - -**P1 — Organizational emergence** -- `pattern.py` + `org.py` + suggestion system -- Agents can form departments, roles, rules through emergence - -**P2 — Full company lifecycle** -- `valuation.py` + IPO conditions + space expansion -- Complete "garage to IPO" path with valuation and shocks - -**P3 — Watchable experience** -- Three-panel frontend UI -- Complete viewer experience with real-time streaming - -## Open Questions - -- What LLM model/cost profile makes this viable for long runs (100+ ticks)? -- How to handle agents that spiral into unproductive loops? -- Should the talent pool be finite (hire everyone and you're stuck) or renewable? -- How many concurrent agents before LLM costs become prohibitive? diff --git a/docs/research/2026-05-15-agent-trend-radar.md b/docs/research/2026-05-15-agent-trend-radar.md deleted file mode 100644 index b500b86..0000000 --- a/docs/research/2026-05-15-agent-trend-radar.md +++ /dev/null @@ -1,240 +0,0 @@ -# Agent Trend Radar - 2026-05-15 - -## Purpose - -AnteLab needs a sharper public thesis than "AI society simulation" or "agent -arena." This scan checks current GitHub-visible agent trends and maps them to a -practical product direction for the project. - -## Tooling Snapshot - -`agent-reach doctor` was run locally on 2026-05-15. - -Available channels: - -- GitHub repository and code access. -- Jina Reader for arbitrary web pages. -- YouTube metadata/subtitle extraction. -- RSS/Atom feeds. -- V2EX public API. - -Partial or unavailable channels: - -- Reddit CLI is installed, but unauthenticated public search returned - `forbidden`. -- X/Twitter is not installed in the current Agent Reach setup. -- Exa semantic web search is not configured. - -GitHub CLI search was available through approved network execution. The local -`gh auth status` reported an invalid stored token, but unauthenticated search -queries still returned repository results after network approval. - -## GitHub Scan Commands - -The first pass used these repository searches: - -```bash -gh search repos "ai agent" --sort stars --limit 20 -gh search repos "agent skills" --sort stars --limit 20 -gh search repos "mcp agent" --sort stars --limit 20 -gh search repos "llm observability" --sort stars --limit 20 -gh search repos "agent benchmark" --sort stars --limit 20 -``` - -## Trend Clusters - -### 1. Agent Skills Are Becoming a Distribution Format - -Representative repositories: - -- `anthropics/skills` - public repository for Agent Skills. -- `vercel-labs/agent-skills` and `vercel-labs/skills`. -- `addyosmani/agent-skills`. -- `sickn33/antigravity-awesome-skills`. -- `VoltAgent/awesome-agent-skills`. -- `K-Dense-AI/scientific-agent-skills`. -- `google/skills`. - -Signal: - -The community is moving from "build one large agent" toward reusable capability -packs. Skills are becoming a delivery unit for agent behavior. - -Implication for AnteLab: - -Skills create a verification gap. A skill can claim to draft, update, submit, -or coordinate, but users still need evidence that it changed the intended -system state. AnteLab should not compete with skill marketplaces; it should -verify skill outcomes. - -### 2. MCP and Tool Gateways Are Expanding Agent Reach - -Representative repositories: - -- `lastmile-ai/mcp-agent`. -- `casdoor/casdoor` as an agent-first IAM / MCP gateway. -- `0x4m4/hexstrike-ai` for MCP-driven security tools. -- `ascending-llc/jarvis-registry` for enterprise tool gateways. -- `Dicklesworthstone/mcp_agent_mail` for multi-agent coordination. -- `Dataojitori/nocturne_memory` for MCP memory. -- `paiml/paiml-mcp-agent-toolkit`. - -Signal: - -Agents are being connected to more real systems: identity, mail, security tools, -business platforms, memory stores, and enterprise gateways. - -Implication for AnteLab: - -As tool reach grows, "the agent called a tool" is no longer enough. The next -valuable layer is proving whether the tool call produced the intended -side-effect and whether the agent verified the result. - -### 3. Observability and Eval Platforms Are Crowded - -Representative repositories: - -- `langfuse/langfuse`. -- `Helicone/helicone`. -- `evidentlyai/evidently`. -- `openlit/openlit`. -- `openobserve/openobserve`. -- `Agenta-AI/agenta`. -- `Crashlens/crashlens`. - -Signal: - -Tracing, prompt management, metrics, cost tracking, and model evals are already -well represented. - -Implication for AnteLab: - -AnteLab should not position as another LLM observability platform. The open -space is a layer above traces: outcome verification. Traces show what happened; -AnteLab should decide whether the agent's claims are supported by state -evidence. - -### 4. Agent Benchmarks Are Also Crowded - -Representative repositories: - -- `TheAgentCompany/TheAgentCompany`. -- `camel-ai/crab`. -- `claw-bench/claw-bench`. -- `openclaw/clawbench`. -- `Proximal-Labs/frontier-swe`. -- `philschmid/ai-agent-benchmark-compendium`. -- `THUDM/DataSciBench`. -- `agentrebench/AgentRE-Bench`. -- `SKYLENAGE-AI/QwenClawBench`. - -Signal: - -The market already understands agent benchmarks. Many benchmarks specialize by -domain, environment, or scoring method. - -Implication for AnteLab: - -"Another benchmark" is not enough. AnteLab needs a more specific thesis: -state-grounded verification of whether plans, promises, and tool calls became -real state changes. - -## Positioning Options - -### Option A: Agent Crash Test Lab - -Strengths: - -- Strong metaphor. -- Easy to demo visually. -- Fits the existing replay and scenario engine. - -Weaknesses: - -- Still sounds like a benchmark or arena. -- Could be perceived as a novelty simulation unless tied to concrete evidence. - -### Option B: Public Agent Arena - -Strengths: - -- Has competition and community pull. -- Natural GitHub leaderboard and PR loop. - -Weaknesses: - -- Requires a trusted scoring layer before it means anything. -- Can become a vanity leaderboard without a unique standard. - -### Option C: Agent Receipt Layer - -Strengths: - -- Directly serves the skills, MCP, tool, and workflow trends. -- Differentiates from observability by focusing on outcome truth, not trace - collection. -- Fits the strongest slogan: "Words are not actions." -- Can start locally without hosted infrastructure or accounts. - -Weaknesses: - -- Less immediately visual than a crash-test arena. -- Needs a crisp report format to make the value obvious. - -## Recommendation - -Select Option C as the core product direction: - -> AnteLab is the receipt layer for AI agents. - -Public message: - -> Words are not actions. Every claim needs a receipt. - -Technical thesis: - -> AnteLab verifies whether an agent's plans, promises, tool calls, and handoffs -> produced real, auditable state changes. - -This does not discard crash tests, worlds, replay, or leaderboards. It reorders -them: - -1. Receipt layer: define claim/action/state-change/receipt evidence. -2. Autopsy report: explain unsupported claims and missing receipts. -3. Replay viewer: show the exact moment words diverged from state. -4. Crash scenarios: package evidence-driven tests. -5. Arena: compare agents only after the receipt standard is trustworthy. - -## First Product Bet - -Build one narrow capability first: - -> Detect and report a false completion claim. - -Example: - -```text -Agent said: -"I delivered the medicine." - -Receipts found: -- no take(medicine) -- no move(clinic) -- no give(medicine) -- clinic.medicine stayed 0 - -Verdict: -False Completion Claim -``` - -This is the smallest feature that proves the new thesis. It can later generalize -to tool verification, handoff integrity, memory externalization, and public -agent scoring. - -## Follow-Up Work - -1. Write the receipt-layer spec as `specs/039-agent-receipt-layer.md`. -2. Keep the first implementation scoped to unsupported completion claims. -3. Re-run trend radar after X/Twitter channel setup to collect real complaint - language around false completion, tool overtrust, and agent "done" claims. -4. Update README positioning only after the receipt-layer MVP is demonstrated. diff --git a/docs/superpowers/plans/2026-07-10-deterministic-evolution-kernel.md b/docs/superpowers/plans/2026-07-10-deterministic-evolution-kernel.md new file mode 100644 index 0000000..9b74a20 --- /dev/null +++ b/docs/superpowers/plans/2026-07-10-deterministic-evolution-kernel.md @@ -0,0 +1,2886 @@ +# Deterministic Evolution Kernel Implementation Plan + +> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. + +**Goal:** Reboot AnteLab into a clean, CPU-only, deterministic headless kernel in which fixed-point digital organisms inherit mutable genomes, sense a toroidal food world, act through a bounded controller, reproduce, die, form lineages, and emit a versioned run artifact. + +**Architecture:** Replace the deleted company/LLM/receipt stack with small standard-library-first modules under `antelab/core`, plus a headless experiment runner and artifact writer. Authoritative state uses integer fixed-point units and a repository-owned SplitMix64 random generator; the frontend, API, multi-seed proof harness, checkpoints, and lifetime learning remain outside this plan. + +**Tech Stack:** Python 3.12, dataclasses, argparse, hashlib/json, PyYAML, pytest, Ruff, mypy, uv, GitHub Actions. + +--- + +## Scope and Starting State + +The approved design is +`docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md`. + +Commit `f950c14` adds the approved design. The primary checkout already marks the +historical tracked tree as deleted, while the required isolated implementation +worktree starts from clean tracked files. Task 1 works in either state: it first +materializes the exact approved retirement boundary with `git rm`, then replaces +the minimum repository skeleton, validates it, and commits cleanup plus skeleton +as one auditable change. + +This plan implements only subproject 1 from the design: + +- repository reboot skeleton; +- deterministic fixed-point primitives; +- validated single-run configuration; +- genome, mutation, and a fixed 10-input/5-output controller; +- organism, food, spatial query, movement, energy, reproduction, and death; +- deterministic tick orchestration and lineage events; +- a minimal versioned artifact; +- headless runner and CLI; +- one deterministic smoke experiment. + +This plan does not implement: + +- statistical adaptation claims or multi-seed controls; +- ancestor replay or checkpoint resume; +- HTTP/WebSocket APIs; +- frontend rendering; +- lifetime learning, sexual reproduction, recombination, predators, seasons, or + co-evolving environments; +- LLM dependencies or network calls. + +## Locked File Structure + +Files present after this plan: + +```text +.github/workflows/ci.yml +.gitignore +.python-version +AGENTS.md +ARCHITECTURE.md +CONTRIBUTING.md +LICENSE +Makefile +README.md +RUNNING.md +pyproject.toml +uv.lock +antelab/__init__.py +antelab/cli.py +antelab/core/__init__.py +antelab/core/brain.py +antelab/core/config.py +antelab/core/environment.py +antelab/core/evolution.py +antelab/core/fixed.py +antelab/core/genome.py +antelab/core/organism.py +antelab/core/physics.py +antelab/core/rng.py +antelab/core/simulation.py +antelab/core/spatial.py +antelab/artifacts/__init__.py +antelab/artifacts/schema.py +antelab/artifacts/writer.py +antelab/experiments/__init__.py +antelab/experiments/runner.py +docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md +docs/superpowers/plans/2026-07-10-deterministic-evolution-kernel.md +experiments/foraging-genesis.yaml +scripts/benchmark_kernel.py +tests/__init__.py +tests/artifacts/test_writer.py +tests/core/test_brain.py +tests/core/test_config.py +tests/core/test_environment.py +tests/core/test_evolution.py +tests/core/test_fixed.py +tests/core/test_genome.py +tests/core/test_physics.py +tests/core/test_rng.py +tests/core/test_simulation.py +tests/core/test_spatial.py +tests/experiments/test_runner.py +tests/helpers.py +tests/test_cli.py +tests/test_package.py +``` + +Responsibilities are non-overlapping: + +- `fixed.py`: units, headings, toroidal geometry, integer normalization. +- `rng.py`: deterministic random streams and keyed conflict ranking. +- `config.py`: YAML parsing, validation, normalized configuration. +- `genome.py`: heritable traits, controller genes, canonical form, mutation. +- `brain.py`: sensor/effector contracts and fixed-point controller evaluation. +- `organism.py`: organism runtime state and lineage event types. +- `environment.py`: food state and deterministic food creation. +- `spatial.py`: read-only start-of-tick proximity queries. +- `physics.py`: movement, energy charges, eating reach, and world wrapping. +- `evolution.py`: reproduction eligibility, inheritance, energy transfer, death. +- `simulation.py`: authoritative tick order and invariant enforcement. +- `schema.py` / `writer.py`: artifact contract and canonical JSON output. +- `runner.py`: config-to-simulation construction and bounded headless execution. +- `cli.py`: command parsing and user-facing exit codes. + +## Numeric and Performance Contract + +- `UNIT = 1024` represents one scalar unit. +- World positions and distances are integer milli-like units based on `UNIT`. +- Heading is one of 16 deterministic directions. +- Controller inputs, weights, biases, and outputs are integers. +- Energy is an integer; no authoritative state field is a float. +- Organism IDs and food IDs are monotonic integers. +- The smoke budget is 64 founders for 5,000 ticks in under 30 seconds and under + 512 MiB peak RSS on the current arm64 host with Python 3.12.11. +- CI runs correctness checks, not the wall-clock budget; the benchmark script + reports the local timing and fails only when explicitly passed `--enforce`. + +### Task 1: Reboot the repository skeleton and commit the approved cleanup + +**Files:** +- Create: `.github/workflows/ci.yml` +- Create: `.gitignore` +- Create: `.python-version` +- Create: `AGENTS.md` +- Create: `ARCHITECTURE.md` +- Create: `CONTRIBUTING.md` +- Recreate: `LICENSE` +- Create: `Makefile` +- Create: `README.md` +- Create: `RUNNING.md` +- Create: `pyproject.toml` +- Create: `antelab/__init__.py` +- Create: `tests/__init__.py` +- Create: `tests/test_package.py` +- Generate: `uv.lock` +- Delete: all historical tracked paths listed by the approved reset boundary + +- [ ] **Step 1: Confirm the destructive boundary before creating files** + +Run: + +```bash +git status --short --branch +git diff --cached --name-status +TASK1_BASE=$(git rev-parse HEAD) +git merge-base --is-ancestor f950c1463d97ac842808e7b6b9d70e08d739b3e4 "$TASK1_BASE" +git ls-tree -r --name-only "$TASK1_BASE" -- docs/superpowers +``` + +Expected: + +- `TASK1_BASE` records the execution branch tip before cleanup; +- approved design commit `f950c1463d97ac842808e7b6b9d70e08d739b3e4` + is an ancestor of that tip; +- the cached diff is empty; +- the approved design and this plan are tracked at `TASK1_BASE`. + +- [ ] **Step 2: Materialize only the approved retirement boundary** + +Run this exact path-scoped removal before creating replacement files: + +```bash +git rm -r --ignore-unmatch -- .env.example .github/workflows/frontend-ci.yml CLAUDE.md CONSTITUTION.md DESIGN.md DISCOVERIES.md Dockerfile.backend EXPERIMENTS.md ROADMAP.md SPEC_STATUS.md antelab/api antelab/config antelab/engine antelab/experiments antelab/llm antelab/season_bundle.py cast docker-compose.yaml docs/README.md docs/plans docs/research experiments frontend prompts scripts seasons specs tests +``` + +Expected: only paths inside this explicit boundary become staged deletions. Do +not use shell `rm`, wildcard expansion, `git add .`, or any repository-wide +cleanup command. Do not touch `docs/superpowers/`. + +- [ ] **Step 3: Write the failing package identity test** + +Create `tests/__init__.py` as an empty file and create +`tests/test_package.py`: + +```python +import tomllib +from pathlib import Path + +from antelab import __version__ + + +def test_package_identity() -> None: + assert __version__ == "0.2.0" + + +def test_bootstrap_does_not_publish_future_cli() -> None: + text = Path("pyproject.toml").read_text(encoding="utf-8") + project = tomllib.loads(text)["project"] + assert "scripts" not in project +``` + +- [ ] **Step 4: Run the test to verify the skeleton is absent** + +Run: + +```bash +python3 -m pytest tests/test_package.py -q +``` + +Expected: FAIL because the deleted historical package is unavailable or does not +expose version `0.2.0`. If the global interpreter lacks pytest, record that +environment failure and continue to Step 5; Step 8 is the authoritative red/green +verification in the new environment. + +- [ ] **Step 5: Create the minimal package and dependency contract** + +Create `antelab/__init__.py`: + +```python +"""AnteLab digital evolution laboratory.""" + +__version__ = "0.2.0" +``` + +Create `.python-version` containing exactly: + +```text +3.12 +``` + +Create `pyproject.toml`: + +```toml +[project] +name = "antelab" +version = "0.2.0" +description = "Deterministic digital evolution laboratory" +readme = "README.md" +license = { text = "MIT" } +requires-python = ">=3.12" +dependencies = ["pyyaml>=6.0.2,<7"] + +[project.optional-dependencies] +dev = [ + "mypy>=1.16,<2", + "pytest>=8.4,<9", + "ruff>=0.11,<1", + "types-PyYAML>=6.0.12,<7", +] + +[build-system] +requires = ["hatchling>=1.27,<2"] +build-backend = "hatchling.build" + +[tool.pytest.ini_options] +testpaths = ["tests"] + +[tool.ruff] +target-version = "py312" +line-length = 100 + +[tool.ruff.lint] +select = ["A", "B", "E", "F", "I", "N", "SIM", "UP"] + +[tool.mypy] +python_version = "3.12" +strict = true +warn_return_any = true +warn_unused_configs = true +``` + +- [ ] **Step 6: Recreate the root project contract** + +Create `.gitignore`: + +```gitignore +.venv/ +__pycache__/ +*.py[cod] +*.egg-info/ +.pytest_cache/ +.ruff_cache/ +.mypy_cache/ +.coverage +coverage.xml +dist/ +build/ +artifacts/ +benchmarks/*.json +.env +.env.* +.DS_Store +.codex/ +.claude/ +.gstack/ +.superpowers/ +``` + +Recreate `LICENSE` with the unchanged MIT text and copyright line +`Copyright (c) 2026 AnteLab Contributors` from `f950c14^:LICENSE`. + +Create `README.md`: + +```markdown +# AnteLab + +> **No prompts. No goals. Just physics, mutation, and selection.** + +AnteLab is an open-source digital evolution laboratory. Its authoritative +headless engine starts from primitive inherited controllers and stable physics, +then records how populations change across generations. + +The reboot is under active construction. V1 is CPU-only, deterministic, and has +no LLM or network dependency. + +## Development + +See [RUNNING.md](RUNNING.md) for setup and commands. The approved architecture is +in [ARCHITECTURE.md](ARCHITECTURE.md). +``` + +Create `ARCHITECTURE.md`: + +```markdown +# Architecture + +The headless Python engine is authoritative. Organisms receive bounded local +sensors, emit bounded effectors, and inherit fixed-point genomes. Rendering and +analysis never feed state back into the engine. + +The implementation contract is defined by +`docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md`. +The first implementation slice is tracked by +`docs/superpowers/plans/2026-07-10-deterministic-evolution-kernel.md`. +``` + +Create `RUNNING.md`: + +````markdown +# Running AnteLab + +Requirements: Python 3.12 and uv. + +```bash +make setup +make verify +``` + +After the kernel tasks land, run the smoke experiment with: + +```bash +uv run antelab run experiments/foraging-genesis.yaml --output artifacts/run.json +``` +```` + +Create `CONTRIBUTING.md`: + +```markdown +# Contributing + +Every behavior change starts with a failing test. Authoritative simulation code +must use integer state, AnteLab-owned RNG streams, and versioned serialization. +Do not introduce LLM or network dependencies into the core organism loop. + +Run `make verify` before submitting a change. Generated artifacts are ignored; +small deterministic fixtures may be committed with their reproduction command. +``` + +Create `AGENTS.md`: + +```markdown +# AnteLab Agent Rules + +- Read the approved reboot design and current implementation plan before edits. +- Preserve deterministic integer state and simulation-owned randomness. +- Do not add LLM calls, free-form actions, company simulation, or receipt product + behavior to the V1 core. +- Use tests first and explicit file staging; never use `git add .`. +- Treat extinction as a valid result and broken invariants as engine failures. +``` + +Create `Makefile`: + +```make +.PHONY: setup test lint typecheck verify + +setup: + uv sync --extra dev + +test: + uv run pytest -q + +lint: + uv run ruff check antelab tests + +typecheck: + uv run mypy antelab + +verify: lint typecheck test +``` + +Create `.github/workflows/ci.yml`: + +```yaml +name: CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + kernel: + runs-on: ubuntu-latest + timeout-minutes: 10 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.12" + - uses: astral-sh/setup-uv@v5 + with: + enable-cache: true + cache-dependency-glob: "uv.lock" + - run: uv sync --extra dev --frozen + - run: uv run ruff check antelab tests + - run: uv run mypy antelab + - run: uv run pytest -q +``` + +- [ ] **Step 7: Lock dependencies** + +Run: + +```bash +uv lock +uv sync --python 3.12 --extra dev +.venv/bin/python --version +``` + +Expected: `uv.lock` is created and the editable `antelab==0.2.0` package is +installed without FastAPI, Uvicorn, HTTPX, OpenAI, Anthropic, or frontend +dependencies. The version command reports Python 3.12.x; a 3.13 environment is +not valid evidence for the declared local performance baseline. + +- [ ] **Step 8: Run the package test in the new environment** + +Run: + +```bash +uv run pytest tests/test_package.py -q +``` + +Expected: `2 passed`. + +- [ ] **Step 9: Stage only the replacement skeleton and approved retirements** + +Stage recreated and new files explicitly: + +```bash +git add .github/workflows/ci.yml .gitignore .python-version AGENTS.md ARCHITECTURE.md CONTRIBUTING.md LICENSE Makefile README.md RUNNING.md pyproject.toml uv.lock antelab/__init__.py tests/__init__.py tests/test_package.py +``` + +All approved deletions are already staged by Step 2's exact `git rm`. Do not run +a secondary deletion-staging command: removed index entries no longer match +ordinary pathspecs on Git 2.50.1. Do not substitute `git add -u .` or any other +bulk command. + +Do not stage `docs/superpowers/`; the approved design and implementation plan are +already committed separately. + +- [ ] **Step 10: Audit the cleanup before committing** + +Run: + +```bash +git diff --cached --check +git diff --cached --name-status +git diff --cached --stat +git status --short --branch +``` + +Expected: + +- the cached diff contains the replacement skeleton and only the approved old + paths; +- `docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md` + and this plan are not deleted or modified; +- no untracked historical generated assets remain; +- the unstaged deletion list is empty after every historical path has been + either recreated or intentionally staged. + +- [ ] **Step 11: Commit the formal repository reboot** + +```bash +git commit -m "chore: reboot repository for digital evolution" +``` + +### Task 2: Add deterministic fixed-point geometry + +**Files:** +- Create: `antelab/core/__init__.py` +- Create: `antelab/core/fixed.py` +- Create: `tests/core/test_fixed.py` + +- [ ] **Step 1: Write fixed-point geometry tests** + +Create `tests/core/test_fixed.py`: + +```python +from antelab.core.fixed import ( + DIRECTION_COUNT, + UNIT, + clamp, + direction_for_delta, + heading_delta, + move_point, + normalize_ratio, + toroidal_delta, + toroidal_distance_sq, +) + + +def test_toroidal_delta_takes_shortest_signed_path() -> None: + assert toroidal_delta(95 * UNIT, 5 * UNIT, 100 * UNIT) == 10 * UNIT + assert toroidal_delta(5 * UNIT, 95 * UNIT, 100 * UNIT) == -10 * UNIT + + +def test_move_point_wraps_and_uses_discrete_heading() -> None: + x, y = move_point(99 * UNIT, 10 * UNIT, 0, 3 * UNIT, 100 * UNIT, 100 * UNIT) + assert (x, y) == (2 * UNIT, 10 * UNIT) + assert DIRECTION_COUNT == 16 + + +def test_direction_and_heading_error_use_integer_vectors() -> None: + assert direction_for_delta(10 * UNIT, UNIT) == 0 + assert direction_for_delta(UNIT, 10 * UNIT) == 4 + assert heading_delta(15, 1) == 2 + assert heading_delta(1, 15) == -2 + + +def test_distance_clamp_and_ratio_are_integer_only() -> None: + distance = toroidal_distance_sq(0, 0, 3 * UNIT, 4 * UNIT, 100 * UNIT, 100 * UNIT) + assert distance == 25 * UNIT * UNIT + assert clamp(12, 0, 10) == 10 + assert normalize_ratio(1, 4) == UNIT // 4 +``` + +- [ ] **Step 2: Run the tests to verify they fail** + +Run: + +```bash +uv run pytest tests/core/test_fixed.py -q +``` + +Expected: FAIL with `ModuleNotFoundError: No module named 'antelab.core'`. + +- [ ] **Step 3: Implement the fixed-point module** + +Create an empty `antelab/core/__init__.py` and create +`antelab/core/fixed.py`: + +```python +"""Deterministic integer geometry for the authoritative simulation.""" + +UNIT = 1024 +DIRECTION_COUNT = 16 +DIRECTION_VECTORS: tuple[tuple[int, int], ...] = ( + (1024, 0), + (946, 392), + (724, 724), + (392, 946), + (0, 1024), + (-392, 946), + (-724, 724), + (-946, 392), + (-1024, 0), + (-946, -392), + (-724, -724), + (-392, -946), + (0, -1024), + (392, -946), + (724, -724), + (946, -392), +) + + +def clamp(value: int, lower: int, upper: int) -> int: + return max(lower, min(upper, value)) + + +def normalize_ratio(numerator: int, denominator: int) -> int: + if denominator <= 0: + raise ValueError("denominator must be positive") + return clamp((numerator * UNIT) // denominator, -UNIT, UNIT) + + +def toroidal_delta(start: int, end: int, size: int) -> int: + if size <= 0: + raise ValueError("world size must be positive") + delta = (end - start) % size + if delta > size // 2: + delta -= size + return delta + + +def toroidal_distance_sq( + ax: int, + ay: int, + bx: int, + by: int, + width: int, + height: int, +) -> int: + dx = toroidal_delta(ax, bx, width) + dy = toroidal_delta(ay, by, height) + return dx * dx + dy * dy + + +def direction_for_delta(dx: int, dy: int) -> int: + if dx == 0 and dy == 0: + return 0 + return max( + range(DIRECTION_COUNT), + key=lambda index: ( + dx * DIRECTION_VECTORS[index][0] + dy * DIRECTION_VECTORS[index][1], + -index, + ), + ) + + +def heading_delta(start: int, end: int) -> int: + delta = (end - start) % DIRECTION_COUNT + if delta > DIRECTION_COUNT // 2: + delta -= DIRECTION_COUNT + return delta + + +def move_point( + x: int, + y: int, + heading: int, + distance: int, + width: int, + height: int, +) -> tuple[int, int]: + dx, dy = DIRECTION_VECTORS[heading % DIRECTION_COUNT] + return ( + (x + (dx * distance) // UNIT) % width, + (y + (dy * distance) // UNIT) % height, + ) +``` + +- [ ] **Step 4: Run focused tests and static checks** + +Run: + +```bash +uv run pytest tests/core/test_fixed.py -q +uv run ruff check antelab/core/fixed.py tests/core/test_fixed.py +uv run mypy antelab/core/fixed.py +``` + +Expected: 4 fixed-geometry tests pass; Ruff and mypy exit 0. + +- [ ] **Step 5: Commit** + +```bash +git add antelab/core/__init__.py antelab/core/fixed.py tests/core/test_fixed.py +git commit -m "feat: add deterministic fixed-point geometry" +``` + +### Task 3: Add owned random streams and validated YAML configuration + +**Files:** +- Create: `antelab/core/rng.py` +- Create: `antelab/core/config.py` +- Create: `tests/core/test_rng.py` +- Create: `tests/core/test_config.py` + +- [ ] **Step 1: Write deterministic RNG tests** + +Create `tests/core/test_rng.py`: + +```python +from antelab.core.rng import Rng, stable_rank + + +def test_splitmix64_reference_sequence() -> None: + rng = Rng(0) + assert [rng.next_u64() for _ in range(3)] == [ + 0xE220A8397B1DCDAF, + 0x6E789E6AA1B965F4, + 0x06C45D188009454F, + ] + + +def test_randbelow_and_signed_delta_are_repeatable() -> None: + left = Rng(42) + right = Rng(42) + assert [left.randbelow(17) for _ in range(20)] == [right.randbelow(17) for _ in range(20)] + assert [left.signed_delta(9) for _ in range(20)] == [right.signed_delta(9) for _ in range(20)] + + +def test_stable_rank_is_keyed_and_order_sensitive() -> None: + assert stable_rank(42, 7, 3, 11) == stable_rank(42, 7, 3, 11) + assert stable_rank(42, 7, 3, 11) != stable_rank(42, 7, 11, 3) +``` + +- [ ] **Step 2: Implement the repository-owned RNG** + +Create `antelab/core/rng.py`: + +```python +"""Versioned integer-only random streams.""" + +from hashlib import blake2b + +_MASK_64 = (1 << 64) - 1 + + +class Rng: + def __init__(self, seed: int) -> None: + self._state = seed & _MASK_64 + + @property + def state(self) -> int: + return self._state + + def next_u64(self) -> int: + self._state = (self._state + 0x9E3779B97F4A7C15) & _MASK_64 + value = self._state + value = ((value ^ (value >> 30)) * 0xBF58476D1CE4E5B9) & _MASK_64 + value = ((value ^ (value >> 27)) * 0x94D049BB133111EB) & _MASK_64 + return (value ^ (value >> 31)) & _MASK_64 + + def randbelow(self, upper: int) -> int: + if not 0 < upper <= 1 << 64: + raise ValueError("upper must be within [1, 2**64]") + limit = (1 << 64) - ((1 << 64) % upper) + while True: + value = self.next_u64() + if value < limit: + return value % upper + + def chance(self, numerator: int, denominator: int) -> bool: + if denominator <= 0 or not 0 <= numerator <= denominator: + raise ValueError("chance must satisfy 0 <= numerator <= denominator") + return self.randbelow(denominator) < numerator + + def signed_delta(self, magnitude: int) -> int: + if magnitude < 0: + raise ValueError("magnitude must be non-negative") + return self.randbelow(2 * magnitude + 1) - magnitude + + +def stable_rank(*parts: int) -> int: + payload = b"|".join(str(part).encode("ascii") for part in parts) + return int.from_bytes(blake2b(payload, digest_size=8).digest(), "big") +``` + +- [ ] **Step 3: Write configuration parsing and validation tests** + +Create `tests/core/test_config.py`: + +```python +from dataclasses import replace +from pathlib import Path + +import pytest + +from antelab.core.config import ConfigError, load_config + + +def test_load_config_normalizes_integer_contract(tmp_path: Path) -> None: + path = tmp_path / "experiment.yaml" + path.write_text( + """schema_version: 1 +condition: uncontrolled_baseline +seed: 42 +ticks: 100 +world: + width: 204800 + height: 204800 + initial_food: 80 + max_food: 120 + food_energy: 4096 + food_regen_per_tick: 1 + max_entities: 256 +life: + initial_population: 16 + initial_energy: 8192 + max_energy: 16384 + max_age: 2000 + reproduction_cooldown: 40 +mutation: + probability: 64 + step: 32 +""", + encoding="utf-8", + ) + config = load_config(path) + assert config.seed == 42 + assert config.condition == "uncontrolled_baseline" + assert config.world.width == 204800 + assert config.mutation.probability == 64 + assert config.to_dict()["schema_version"] == 1 + + +def test_load_config_rejects_population_over_capacity(tmp_path: Path) -> None: + path = tmp_path / "invalid.yaml" + path.write_text( + """schema_version: 1 +condition: uncontrolled_baseline +seed: 1 +ticks: 1 +world: + width: 1024 + height: 1024 + initial_food: 0 + max_food: 0 + food_energy: 1024 + food_regen_per_tick: 0 + max_entities: 2 +life: + initial_population: 3 + initial_energy: 1024 + max_energy: 2048 + max_age: 10 + reproduction_cooldown: 1 +mutation: {probability: 0, step: 0} +""", + encoding="utf-8", + ) + with pytest.raises(ConfigError, match="initial_population cannot exceed max_entities"): + load_config(path) +``` + +- [ ] **Step 4: Implement immutable configuration types** + +Create `antelab/core/config.py` with these frozen dataclasses and helpers: + +```python +from dataclasses import asdict, dataclass +from pathlib import Path +from typing import cast + +import yaml + +from antelab.core.fixed import UNIT + + +class ConfigError(ValueError): + pass + + +@dataclass(frozen=True) +class WorldConfig: + width: int + height: int + initial_food: int + max_food: int + food_energy: int + food_regen_per_tick: int + max_entities: int + + +@dataclass(frozen=True) +class LifeConfig: + initial_population: int + initial_energy: int + max_energy: int + max_age: int + reproduction_cooldown: int + + +@dataclass(frozen=True) +class MutationConfig: + probability: int + step: int + + +@dataclass(frozen=True) +class SimulationConfig: + schema_version: int + condition: str + seed: int + ticks: int + world: WorldConfig + life: LifeConfig + mutation: MutationConfig + + @classmethod + def from_mapping(cls, raw: dict[str, object]) -> "SimulationConfig": + _require_exact_keys( + raw, + {"schema_version", "condition", "seed", "ticks", "world", "life", "mutation"}, + "configuration", + ) + world = _mapping(raw, "world") + life = _mapping(raw, "life") + mutation = _mapping(raw, "mutation") + _require_exact_keys( + world, + { + "width", + "height", + "initial_food", + "max_food", + "food_energy", + "food_regen_per_tick", + "max_entities", + }, + "world", + ) + _require_exact_keys( + life, + { + "initial_population", + "initial_energy", + "max_energy", + "max_age", + "reproduction_cooldown", + }, + "life", + ) + _require_exact_keys(mutation, {"probability", "step"}, "mutation") + return cls( + schema_version=_integer(raw, "schema_version", 1), + condition=_string(raw, "condition"), + seed=_integer(raw, "seed"), + ticks=_integer(raw, "ticks", 1), + world=WorldConfig( + width=_integer(world, "width", 1), + height=_integer(world, "height", 1), + initial_food=_integer(world, "initial_food"), + max_food=_integer(world, "max_food"), + food_energy=_integer(world, "food_energy", 1), + food_regen_per_tick=_integer(world, "food_regen_per_tick"), + max_entities=_integer(world, "max_entities", 1), + ), + life=LifeConfig( + initial_population=_integer(life, "initial_population", 1), + initial_energy=_integer(life, "initial_energy", 1), + max_energy=_integer(life, "max_energy", 1), + max_age=_integer(life, "max_age", 1), + reproduction_cooldown=_integer(life, "reproduction_cooldown"), + ), + mutation=MutationConfig( + probability=_integer(mutation, "probability"), + step=_integer(mutation, "step"), + ), + ) + + def validate(self) -> None: + if self.schema_version != 1: + raise ConfigError("schema_version must equal 1") + if self.condition != "uncontrolled_baseline": + raise ConfigError("V1 condition must equal uncontrolled_baseline") + if self.seed > (1 << 64) - 1: + raise ConfigError("seed must fit an unsigned 64-bit integer") + if self.world.width > 1 << 64 or self.world.height > 1 << 64: + raise ConfigError("world dimensions must not exceed 2**64") + if self.world.initial_food > self.world.max_food: + raise ConfigError("initial_food cannot exceed max_food") + if self.life.initial_population > self.world.max_entities: + raise ConfigError("initial_population cannot exceed max_entities") + if self.life.initial_energy > self.life.max_energy: + raise ConfigError("initial_energy cannot exceed max_energy") + if self.mutation.probability > UNIT: + raise ConfigError("mutation probability cannot exceed UNIT") + if self.mutation.step > 4 * UNIT: + raise ConfigError("mutation step cannot exceed 4 * UNIT") + + def to_dict(self) -> dict[str, object]: + return cast(dict[str, object], asdict(self)) + + +def _mapping(mapping: dict[str, object], key: str) -> dict[str, object]: + value = mapping.get(key) + if not isinstance(value, dict) or not all(isinstance(item, str) for item in value): + raise ConfigError(f"{key} must be a string-keyed mapping") + return cast(dict[str, object], value) + + +def _require_exact_keys( + mapping: dict[str, object], + expected: set[str], + label: str, +) -> None: + actual = set(mapping) + if actual != expected: + raise ConfigError( + f"{label} keys differ: missing={sorted(expected - actual)}, " + f"extra={sorted(actual - expected)}" + ) + + +def _string(mapping: dict[str, object], key: str) -> str: + value = mapping.get(key) + if not isinstance(value, str) or not value: + raise ConfigError(f"{key} must be a non-empty string") + return value + + +def _integer(mapping: dict[str, object], key: str, minimum: int = 0) -> int: + value = mapping.get(key) + if isinstance(value, bool) or not isinstance(value, int) or value < minimum: + raise ConfigError(f"{key} must be an integer >= {minimum}") + return value + + +def load_config(path: Path) -> SimulationConfig: + loaded: object = yaml.safe_load(path.read_text(encoding="utf-8")) + if not isinstance(loaded, dict) or not all(isinstance(item, str) for item in loaded): + raise ConfigError("configuration root must be a mapping") + raw = cast(dict[str, object], loaded) + config = SimulationConfig.from_mapping(raw) + config.validate() + return config +``` + +The exact-key gates reject misspelled or silently ignored configuration. The +`_integer` calls enforce positive ticks, dimensions, energy, maximum age, +and maximum entities, plus non-negative regeneration, cooldown, seed, mutation +probability, and mutation step. Add one focused test for each cross-field branch +inside `validate()` so no validation exists only as unexecuted code. + +- [ ] **Step 5: Run the focused tests and checks** + +Run: + +```bash +uv run pytest tests/core/test_rng.py tests/core/test_config.py -q +uv run ruff check antelab/core/rng.py antelab/core/config.py tests/core/test_rng.py tests/core/test_config.py +uv run mypy antelab/core/rng.py antelab/core/config.py +``` + +Expected: all RNG/config tests pass, including every validation branch; Ruff and +mypy exit 0. + +- [ ] **Step 6: Commit** + +```bash +git add antelab/core/rng.py antelab/core/config.py tests/core/test_rng.py tests/core/test_config.py +git commit -m "feat: add deterministic config and random streams" +``` + +### Task 4: Add canonical genomes and deterministic mutation + +**Files:** +- Create: `antelab/core/genome.py` +- Create: `tests/core/test_genome.py` + +- [ ] **Step 1: Write genome contract tests** + +Create `tests/core/test_genome.py`: + +```python +from antelab.core.fixed import UNIT +from antelab.core.genome import CONTROLLER_GENE_COUNT, Genome, mutate_genome, primitive_ancestor +from antelab.core.rng import Rng + + +def test_primitive_genome_has_canonical_round_trip() -> None: + genome = primitive_ancestor() + assert Genome.from_dict(genome.to_dict()) == genome + assert len(genome.controller_weights) + len(genome.controller_biases) == CONTROLLER_GENE_COUNT + + +def test_zero_probability_preserves_parent() -> None: + parent = primitive_ancestor() + assert mutate_genome(parent, Rng(7), probability=0, step=64) == parent + + +def test_full_probability_is_repeatable_and_bounded() -> None: + parent = primitive_ancestor() + left = mutate_genome(parent, Rng(99), probability=UNIT, step=128) + right = mutate_genome(parent, Rng(99), probability=UNIT, step=128) + assert left == right + assert left != parent + left.validate() +``` + +- [ ] **Step 2: Run the tests to verify they fail** + +Run: + +```bash +uv run pytest tests/core/test_genome.py -q +``` + +Expected: FAIL because `antelab.core.genome` does not exist. + +- [ ] **Step 3: Implement the genome schema** + +Create `antelab/core/genome.py` with these constants and immutable fields: + +```python +INPUT_COUNT = 10 +OUTPUT_COUNT = 5 +CONTROLLER_WEIGHT_COUNT = INPUT_COUNT * OUTPUT_COUNT +CONTROLLER_BIAS_COUNT = OUTPUT_COUNT +CONTROLLER_GENE_COUNT = CONTROLLER_WEIGHT_COUNT + CONTROLLER_BIAS_COUNT + + +@dataclass(frozen=True) +class Genome: + body_radius: int + max_thrust: int + turn_steps: int + sensor_cost: int + basal_cost: int + move_cost: int + sensor_range: int + field_of_view: int + reproduction_threshold: int + reproduction_allocation: int + reproduction_cost: int + signal_strength: int + signal_cost: int + color_r: int + color_g: int + color_b: int + controller_weights: tuple[int, ...] + controller_biases: tuple[int, ...] +``` + +Use a module-level `TRAIT_LIMITS` mapping with these inclusive ranges: + +```python +TRAIT_LIMITS = { + "body_radius": (UNIT // 2, 4 * UNIT), + "max_thrust": (UNIT // 8, 4 * UNIT), + "turn_steps": (1, 4), + "sensor_cost": (0, UNIT), + "basal_cost": (1, UNIT), + "move_cost": (0, UNIT), + "sensor_range": (4 * UNIT, 64 * UNIT), + "field_of_view": (1, 8), + "reproduction_threshold": (4 * UNIT, 64 * UNIT), + "reproduction_allocation": (UNIT, 32 * UNIT), + "reproduction_cost": (0, 4 * UNIT), + "signal_strength": (0, UNIT), + "signal_cost": (0, UNIT), + "color_r": (0, 255), + "color_g": (0, 255), + "color_b": (0, 255), +} +``` + +`Genome.validate()` must enforce every scalar range, exactly 50 weights, exactly +5 biases, and controller genes in `[-4 * UNIT, 4 * UNIT]`. + +Use these sensor/output indices and exact ancestor factory: + +```python +OWN_ENERGY_INPUT = 0 +FOOD_BEARING_INPUT = 3 +TURN_OUTPUT = 0 +THRUST_OUTPUT = 1 +EAT_OUTPUT = 2 +SIGNAL_OUTPUT = 3 +REPRODUCE_OUTPUT = 4 + + +def primitive_ancestor() -> Genome: + weights = [0] * CONTROLLER_WEIGHT_COUNT + biases = [0] * CONTROLLER_BIAS_COUNT + weights[TURN_OUTPUT * INPUT_COUNT + FOOD_BEARING_INPUT] = UNIT + weights[REPRODUCE_OUTPUT * INPUT_COUNT + OWN_ENERGY_INPUT] = UNIT + biases[THRUST_OUTPUT] = UNIT // 2 + biases[EAT_OUTPUT] = UNIT + biases[SIGNAL_OUTPUT] = 0 + biases[REPRODUCE_OUTPUT] = -(3 * UNIT) // 4 + genome = Genome( + body_radius=UNIT, + max_thrust=UNIT, + turn_steps=1, + sensor_cost=2, + basal_cost=8, + move_cost=16, + sensor_range=24 * UNIT, + field_of_view=8, + reproduction_threshold=18 * UNIT, + reproduction_allocation=6 * UNIT, + reproduction_cost=128, + signal_strength=UNIT // 2, + signal_cost=4, + color_r=80, + color_g=210, + color_b=140, + controller_weights=tuple(weights), + controller_biases=tuple(biases), + ) + genome.validate() + return genome +``` + +This ancestor has a minimal food-bearing reflex, continuous forward pressure, +unconditional eat attempts, and energy-gated reproduction. It is an explicit +starting condition, not evidence that evolution has already occurred. + +`mutate_genome()` must iterate scalar fields in declared order, then controller +weights, then biases. For each gene, call `rng.chance(probability, UNIT)` and add +`rng.signed_delta(step)` when selected, clamping to that gene's bounds. + +Use explicit `to_dict()` and `from_dict()` methods. Reject missing, extra, bool, +float, or incorrectly sized values with `ValueError`. `canonical_key()` returns +`json.dumps(self.to_dict(), sort_keys=True, separators=(",", ":"), +allow_nan=False)` and is the sole grouping/sorting key for genome distributions. + +- [ ] **Step 4: Run focused tests and checks** + +Run: + +```bash +uv run pytest tests/core/test_genome.py -q +uv run ruff check antelab/core/genome.py tests/core/test_genome.py +uv run mypy antelab/core/genome.py +``` + +Expected: 3 tests pass; Ruff and mypy exit 0. + +- [ ] **Step 5: Commit** + +```bash +git add antelab/core/genome.py tests/core/test_genome.py +git commit -m "feat: add inherited fixed-point genomes" +``` + +### Task 5: Add the bounded sensor-to-effector controller + +**Files:** +- Create: `antelab/core/brain.py` +- Create: `tests/core/test_brain.py` + +- [ ] **Step 1: Write controller tests** + +Create `tests/core/test_brain.py`: + +```python +import pytest + +from antelab.core.brain import EffectorFrame, SensorFrame, evaluate +from antelab.core.fixed import UNIT +from antelab.core.genome import primitive_ancestor + + +def test_controller_turns_toward_food_and_attempts_eating() -> None: + sensors = SensorFrame( + own_energy=UNIT, + own_age=0, + food_distance=UNIT // 4, + food_bearing=UNIT // 2, + food_density=UNIT // 2, + organism_distance=UNIT, + organism_bearing=0, + organism_signal=0, + organism_density=0, + bias=UNIT, + ) + effectors = evaluate(primitive_ancestor(), sensors) + assert effectors.turn > 0 + assert effectors.thrust > 0 + assert effectors.eat + + +def test_sensor_frame_rejects_values_outside_fixed_range() -> None: + with pytest.raises(ValueError, match="sensor values"): + SensorFrame(2 * UNIT, 0, 0, 0, 0, 0, 0, 0, 0, UNIT) + + +@pytest.mark.parametrize("invalid", [True, 0.5]) +def test_sensor_frame_rejects_non_integer_values(invalid: object) -> None: + with pytest.raises(ValueError, match="sensor values"): + SensorFrame(invalid, 0, 0, 0, 0, 0, 0, 0, 0, UNIT) # type: ignore[arg-type] + + +def test_effectors_are_bounded() -> None: + frame = EffectorFrame(turn=-UNIT, thrust=UNIT, eat=True, signal=0, reproduce=False) + frame.validate() + + +def test_effectors_reject_non_integer_or_non_boolean_values() -> None: + with pytest.raises(ValueError, match="effector types"): + EffectorFrame( # type: ignore[arg-type] + turn=0.5, thrust=0, eat=True, signal=0, reproduce=False + ) + with pytest.raises(ValueError, match="effector types"): + EffectorFrame(turn=0, thrust=0, eat=1, signal=0, reproduce=False) # type: ignore[arg-type] +``` + +- [ ] **Step 2: Implement sensor, effector, and controller evaluation** + +Create `antelab/core/brain.py`: + +```python +@dataclass(frozen=True) +class SensorFrame: + own_energy: int + own_age: int + food_distance: int + food_bearing: int + food_density: int + organism_distance: int + organism_bearing: int + organism_signal: int + organism_density: int + bias: int + + def __post_init__(self) -> None: + values = self.values() + if any(isinstance(value, bool) or not isinstance(value, int) for value in values): + raise ValueError("sensor values must be fixed-point integers") + if any(not -UNIT <= value <= UNIT for value in values): + raise ValueError("sensor values must be within [-UNIT, UNIT]") + + def values(self) -> tuple[int, ...]: + return tuple(getattr(self, item.name) for item in fields(self)) + + +@dataclass(frozen=True) +class EffectorFrame: + turn: int + thrust: int + eat: bool + signal: int + reproduce: bool + + def __post_init__(self) -> None: + self.validate() + + def validate(self) -> None: + numeric = (self.turn, self.thrust, self.signal) + if any(isinstance(value, bool) or not isinstance(value, int) for value in numeric): + raise ValueError("effector types must use fixed-point integers") + if not isinstance(self.eat, bool) or not isinstance(self.reproduce, bool): + raise ValueError("effector types must use booleans for decisions") + if not -UNIT <= self.turn <= UNIT: + raise ValueError("turn out of range") + if not 0 <= self.thrust <= UNIT or not 0 <= self.signal <= UNIT: + raise ValueError("non-negative effector out of range") +``` + +Implement `evaluate(genome, sensors)` as a row-major 10-to-5 integer linear +controller. For each output, calculate: + +```python +total = genome.controller_biases[output_index] * UNIT +for input_index, sensor in enumerate(sensors.values()): + total += sensor * genome.controller_weights[output_index * INPUT_COUNT + input_index] +activated = clamp(total // UNIT, -UNIT, UNIT) +``` + +Map outputs to effectors as follows: + +- output 0: signed turn; +- output 1: thrust clamped to `[0, UNIT]`; +- output 2: eat when positive; +- output 3: signal clamped to `[0, UNIT]`; +- output 4: reproduce when positive. + +`evaluate()` calls `genome.validate()` before reading genes, constructs the +`EffectorFrame`, and returns it only after its automatic validation. No bool or +float may enter or leave the authoritative controller boundary. + +- [ ] **Step 3: Run focused tests and checks** + +Run: + +```bash +uv run pytest tests/core/test_brain.py -q +uv run ruff check antelab/core/brain.py tests/core/test_brain.py +uv run mypy antelab/core/brain.py +``` + +Expected: 3 tests pass; Ruff and mypy exit 0. + +- [ ] **Step 4: Commit** + +```bash +git add antelab/core/brain.py tests/core/test_brain.py +git commit -m "feat: add bounded organism controller" +``` + +### Task 6: Add organism, food, and spatial snapshot types + +**Files:** +- Create: `antelab/core/organism.py` +- Create: `antelab/core/environment.py` +- Create: `antelab/core/spatial.py` +- Create: `tests/helpers.py` +- Create: `tests/core/test_environment.py` +- Create: `tests/core/test_spatial.py` + +- [ ] **Step 1: Write environment and spatial tests** + +Create tests that assert: + +```python +def test_food_spawning_is_deterministic() -> None: + left = Environment.empty(width=100 * UNIT, height=100 * UNIT) + right = Environment.empty(width=100 * UNIT, height=100 * UNIT) + left.spawn_food(Rng(5), count=4, energy=2 * UNIT) + right.spawn_food(Rng(5), count=4, energy=2 * UNIT) + assert left.to_dict() == right.to_dict() + + +def test_spatial_snapshot_finds_nearest_across_wrap() -> None: + food = Food(id=1, x=99 * UNIT, y=5 * UNIT, energy=UNIT) + index = SpatialSnapshot.build( + organisms=(), + foods=(food,), + width=100 * UNIT, + height=100 * UNIT, + ) + assert index.nearest_food(1 * UNIT, 5 * UNIT, 4 * UNIT) == food + + +def test_organism_query_excludes_the_observer_itself() -> None: + observer = make_organism(id=1, x=5 * UNIT, y=5 * UNIT) + neighbor = make_organism(id=2, x=6 * UNIT, y=5 * UNIT) + index = SpatialSnapshot.build( + organisms=(observer, neighbor), + foods=(), + width=100 * UNIT, + height=100 * UNIT, + ) + assert index.nearest_organism( + observer.x, + observer.y, + 4 * UNIT, + exclude_id=observer.id, + ) == neighbor +``` + +- [ ] **Step 2: Implement runtime dataclasses** + +In `organism.py`, define these types: + +```python +@dataclass +class Organism: + id: int + parent_id: int | None + generation: int + genome: Genome + x: int + y: int + heading: int + energy: int + age: int = 0 + alive: bool = True + last_reproduction_tick: int = -1_000_000 + signal: int = 0 + food_eaten: int = 0 + offspring_count: int = 0 + death_cause: str | None = None + + def to_dict(self) -> dict[str, object]: + return { + "id": self.id, + "parent_id": self.parent_id, + "generation": self.generation, + "genome": self.genome.to_dict(), + "x": self.x, + "y": self.y, + "heading": self.heading, + "energy": self.energy, + "age": self.age, + "alive": self.alive, + "last_reproduction_tick": self.last_reproduction_tick, + "signal": self.signal, + "food_eaten": self.food_eaten, + "offspring_count": self.offspring_count, + "death_cause": self.death_cause, + } + + +@dataclass(frozen=True) +class LineageEvent: + parent_id: int + child_id: int + tick: int + generation: int +``` + +In `environment.py`, define: + +```python +@dataclass(frozen=True) +class Food: + id: int + x: int + y: int + energy: int + + +@dataclass +class Environment: + width: int + height: int + foods: dict[int, Food] + next_food_id: int +``` + +Add `Food.to_dict()` and `Environment.to_dict()` with sorted food IDs and only +plain integer/list/dict values. + +```python +@classmethod +def empty(cls, width: int, height: int) -> Environment: + return cls(width=width, height=height, foods={}, next_food_id=1) + +def spawn_food(self, rng: Rng, count: int, energy: int) -> tuple[Food, ...]: + created: list[Food] = [] + for _ in range(count): + food = Food( + id=self.next_food_id, + x=rng.randbelow(self.width), + y=rng.randbelow(self.height), + energy=energy, + ) + self.foods[food.id] = food + self.next_food_id += 1 + created.append(food) + return tuple(created) +``` + +In `spatial.py`, create immutable `SpatialSnapshot` from tuples sorted by ID and +index them into toroidally wrapped uniform-grid cells of size `16 * UNIT`. +Cell counts use ceiling division so worlds need not be multiples of cell size. +`build()` stores separate mappings from `(cell_x, cell_y)` to sorted organism and +food tuples. Query methods enumerate only the wrapped cells intersecting the +requested radius, deduplicate wrapped cell coordinates, and then apply exact +toroidal distance checks. Expose `foods_within(x, y, radius)` and +`organisms_within(x, y, radius, exclude_id)` as ID-sorted candidate tuples; +build `nearest_food`, `nearest_organism`, `food_density`, and +`organism_density` on those methods. Organism queries require `exclude_id`, and +both nearest and density paths must exclude that identity. Break equal-distance +nearest-query ties by lower entity ID; this ordering is for read-only identity +and is not an action-resolution priority. + +Create `tests/helpers.py` so later tests do not invent incompatible organism +fixtures: + +```python +from antelab.core.config import LifeConfig, MutationConfig, SimulationConfig, WorldConfig +from antelab.core.fixed import UNIT +from antelab.core.genome import Genome, primitive_ancestor +from antelab.core.organism import Organism + + +def make_organism( + *, + id: int = 1, + parent_id: int | None = None, + generation: int = 0, + genome: Genome | None = None, + x: int = 0, + y: int = 0, + heading: int = 0, + energy: int = 20_000, + age: int = 0, + alive: bool = True, + last_reproduction_tick: int = -1_000_000, +) -> Organism: + return Organism( + id=id, + parent_id=parent_id, + generation=generation, + genome=genome or primitive_ancestor(), + x=x, + y=y, + heading=heading, + energy=energy, + age=age, + alive=alive, + last_reproduction_tick=last_reproduction_tick, + ) + + +def make_config( + *, + seed: int = 42, + initial_population: int = 4, + max_entities: int = 32, +) -> SimulationConfig: + return SimulationConfig( + schema_version=1, + condition="uncontrolled_baseline", + seed=seed, + ticks=200, + world=WorldConfig( + width=100 * UNIT, + height=100 * UNIT, + initial_food=20, + max_food=40, + food_energy=2 * UNIT, + food_regen_per_tick=1, + max_entities=max_entities, + ), + life=LifeConfig( + initial_population=initial_population, + initial_energy=12 * UNIT, + max_energy=32 * UNIT, + max_age=500, + reproduction_cooldown=10, + ), + mutation=MutationConfig(probability=64, step=32), + ) +``` + +- [ ] **Step 3: Run focused tests and checks** + +Run: + +```bash +uv run pytest tests/core/test_environment.py tests/core/test_spatial.py -q +uv run ruff check antelab/core/organism.py antelab/core/environment.py antelab/core/spatial.py tests/core/test_environment.py tests/core/test_spatial.py +uv run mypy antelab/core/organism.py antelab/core/environment.py antelab/core/spatial.py +``` + +Expected: all focused tests pass; Ruff and mypy exit 0. + +- [ ] **Step 4: Commit** + +```bash +git add antelab/core/organism.py antelab/core/environment.py antelab/core/spatial.py tests/helpers.py tests/core/test_environment.py tests/core/test_spatial.py +git commit -m "feat: add organism world snapshot types" +``` + +### Task 7: Add fixed-point movement, eating, and energy accounting + +**Files:** +- Create: `antelab/core/physics.py` +- Create: `tests/core/test_physics.py` + +- [ ] **Step 1: Write physics tests** + +Cover these exact behaviors: + +```python +from antelab.core.environment import Food +from antelab.core.fixed import UNIT +from antelab.core.physics import ( + ActionCosts, + apply_movement, + can_eat, + charge_action_energy, + consume_food, +) +from tests.helpers import make_organism + + +def test_movement_wraps_and_action_charge_reports_actual_energy() -> None: + organism = make_organism(x=99 * UNIT, y=10 * UNIT, energy=10 * UNIT) + movement = apply_movement( + organism, + turn=0, + thrust=UNIT, + width=100 * UNIT, + height=100 * UNIT, + ) + assert movement.organism.x < 4 * UNIT + assert movement.organism.energy == organism.energy + assert movement.movement_energy_requested == organism.genome.move_cost + + charged = charge_action_energy( + movement.organism, + ActionCosts( + basal=organism.genome.basal_cost, + sensing=organism.genome.sensor_cost, + movement=movement.movement_energy_requested, + signal=0, + ), + ) + assert charged.organism.energy == ( + organism.energy + - charged.basal_energy_spent + - charged.sensing_energy_spent + - charged.movement_energy_spent + - charged.signal_energy_spent + ) + + +def test_eat_requires_reach_and_transfers_food_energy() -> None: + organism = make_organism(x=10 * UNIT, y=10 * UNIT, energy=4 * UNIT) + food = Food(id=1, x=10 * UNIT + UNIT, y=10 * UNIT, energy=2 * UNIT) + assert can_eat(organism, food, width=100 * UNIT, height=100 * UNIT) + outcome = consume_food(organism, food, max_energy=12 * UNIT) + assert outcome.organism.energy == 6 * UNIT + assert outcome.organism.food_eaten == 1 + assert outcome.absorbed_energy == 2 * UNIT + assert outcome.overflow_energy == 0 + + +def test_eating_reports_energy_that_cannot_be_absorbed() -> None: + organism = make_organism(energy=11 * UNIT) + food = Food(id=1, x=0, y=0, energy=2 * UNIT) + outcome = consume_food(organism, food, max_energy=12 * UNIT) + assert outcome.absorbed_energy == UNIT + assert outcome.overflow_energy == UNIT + assert outcome.absorbed_energy + outcome.overflow_energy == food.energy +``` + +- [ ] **Step 2: Implement pure physics transformations** + +`physics.py` must define immutable `MovementOutcome(organism, +movement_energy_requested)`, `ActionCosts(basal, sensing, movement, signal)`, +`ActionChargeOutcome(organism, basal_energy_spent, sensing_energy_spent, +movement_energy_spent, signal_energy_spent)`, and +`ConsumptionOutcome(organism, absorbed_energy, overflow_energy)`, then expose: + +```python +def apply_movement( + organism: Organism, + turn: int, + thrust: int, + width: int, + height: int, +) -> MovementOutcome: + turn_delta = 0 + if turn > UNIT // 4: + turn_delta = organism.genome.turn_steps + elif turn < -(UNIT // 4): + turn_delta = -organism.genome.turn_steps + heading = (organism.heading + turn_delta) % DIRECTION_COUNT + distance = (organism.genome.max_thrust * max(0, thrust)) // UNIT + x, y = move_point(organism.x, organism.y, heading, distance, width, height) + move_charge = (organism.genome.move_cost * max(0, thrust)) // UNIT + moved = replace( + organism, + x=x, + y=y, + heading=heading, + age=organism.age + 1, + ) + return MovementOutcome(moved, move_charge) +``` + +Implement `charge_action_energy()` after movement, eating, and signal resolution. +Debit in the versioned order basal, sensing, movement, then signal. Each actual +debit is `min(remaining_energy, requested_cost)`; return all four actual debits +and never allow negative energy. This makes the controller's action a deferred +energy obligation within the same tick: food acquired that tick may pay it, and +an organism unable to pay the full obligation reaches zero energy and dies in +the death phase. + +`can_eat` with reach equal to `body_radius + UNIT`. `consume_food` transfers up +to `max_energy`, reports any unabsorbed food energy as `overflow_energy`, and +increments `food_eaten`. Neither function mutates the input object. Overflow is +a declared environmental dissipation term; it must appear in the tick energy +ledger rather than disappearing silently. Ledger fields always use actual +debits reported by `ActionChargeOutcome`, not requested costs, so low-energy +clamping cannot create an unexplained gap. + +- [ ] **Step 3: Run focused tests and checks** + +Run: + +```bash +uv run pytest tests/core/test_physics.py -q +uv run ruff check antelab/core/physics.py tests/core/test_physics.py +uv run mypy antelab/core/physics.py +``` + +Expected: focused tests pass; Ruff and mypy exit 0. + +- [ ] **Step 4: Commit** + +```bash +git add antelab/core/physics.py tests/core/test_physics.py +git commit -m "feat: add movement and energy physics" +``` + +### Task 8: Add inheritance, reproduction, and death + +**Files:** +- Create: `antelab/core/evolution.py` +- Create: `tests/core/test_evolution.py` + +- [ ] **Step 1: Write evolution tests** + +Tests must prove: + +```python +from antelab.core.evolution import can_reproduce, reproduce, resolve_death +from antelab.core.fixed import UNIT +from antelab.core.organism import LineageEvent +from antelab.core.rng import Rng +from tests.helpers import make_organism + + +def test_reproduction_transfers_energy_and_records_parentage() -> None: + parent = make_organism(id=7, generation=3, energy=20 * UNIT) + outcome = reproduce( + parent=parent, + child_id=8, + tick=100, + rng=Rng(12), + mutation_probability=0, + mutation_step=0, + width=100 * UNIT, + height=100 * UNIT, + ) + assert outcome.parent.energy + outcome.child.energy == ( + parent.energy - parent.genome.reproduction_cost + ) + assert outcome.energy_spent == parent.genome.reproduction_cost + assert outcome.child.parent_id == 7 + assert outcome.child.generation == 4 + assert outcome.child.genome == parent.genome + assert outcome.lineage == LineageEvent(7, 8, 100, 4) + + +def test_reproduction_respects_threshold_and_cooldown() -> None: + parent = make_organism(energy=UNIT, last_reproduction_tick=95) + assert not can_reproduce(parent, tick=100, cooldown=10) + + +def test_death_is_a_state_transition_not_an_exception() -> None: + organism = make_organism(energy=0, age=10) + dead = resolve_death(organism, max_age=100) + assert not dead.alive + assert dead.death_cause == "energy_depleted" +``` + +- [ ] **Step 2: Implement evolution transitions** + +Define immutable `ReproductionOutcome(parent, child, lineage, energy_spent)`. +Implement: + +- `can_reproduce`: alive, energy at or above genome threshold, enough energy for + `reproduction_cost + reproduction_allocation`, and cooldown met; +- `reproduce`: dissipate exactly `genome.reproduction_cost`, transfer exactly + `genome.reproduction_allocation` energy to the child, mutate a copied genome, + create a deterministic nearby position using the supplied RNG, update parent + offspring count and last reproduction tick, and report the dissipated cost; +- `resolve_death`: mark death from zero energy before maximum age; otherwise mark + `maximum_age` when `age >= max_age`. + +Reject cost plus allocation that would leave the parent negative with +`ValueError`; this is a broken caller invariant, not a normal failed +reproduction. + +- [ ] **Step 3: Run focused tests and checks** + +Run: + +```bash +uv run pytest tests/core/test_evolution.py -q +uv run ruff check antelab/core/evolution.py tests/core/test_evolution.py +uv run mypy antelab/core/evolution.py +``` + +Expected: focused tests pass; Ruff and mypy exit 0. + +- [ ] **Step 4: Commit** + +```bash +git add antelab/core/evolution.py tests/core/test_evolution.py +git commit -m "feat: add heritable reproduction and death" +``` + +### Task 9: Build deterministic initialization and sensor snapshots + +**Files:** +- Create: `antelab/core/simulation.py` +- Create: `tests/core/test_simulation.py` + +- [ ] **Step 1: Write initialization and sensor tests** + +Start `tests/core/test_simulation.py` with one shared config factory: + +```python +from dataclasses import replace + +import pytest + +from antelab.core.config import SimulationConfig +from antelab.core.environment import Food +from antelab.core.fixed import UNIT +from antelab.core.simulation import Simulation +from tests.helpers import make_config, make_organism + + +@pytest.fixture +def config() -> SimulationConfig: + return make_config() + + +def test_initialization_is_seed_deterministic(config: SimulationConfig) -> None: + left = Simulation.create(config) + right = Simulation.create(config) + assert left.state_checksum() == right.state_checksum() + assert left.rng.state == right.rng.state + assert all(item.parent_id is None and item.generation == 0 for item in left.organisms.values()) + + +def test_different_seed_changes_initial_state(config: SimulationConfig) -> None: + left = Simulation.create(config) + right = Simulation.create(replace(config, seed=43)) + assert left.state_checksum() != right.state_checksum() + + +def test_sensor_frame_is_local_and_bounded(config: SimulationConfig) -> None: + simulation = Simulation.create(config) + organism = simulation.organisms[min(simulation.organisms)] + sensors = simulation.sensor_frame_for(organism.id) + assert len(sensors.values()) == 10 + assert all(-UNIT <= value <= UNIT for value in sensors.values()) + + +def test_field_of_view_hides_food_behind_observer(config: SimulationConfig) -> None: + view_config = replace( + config, + world=replace(config.world, initial_food=0, food_regen_per_tick=0), + life=replace(config.life, initial_population=1), + ) + simulation = Simulation.create(view_config) + genome = replace(simulation.organisms[1].genome, field_of_view=1) + simulation.organisms[1] = make_organism( + id=1, + genome=genome, + x=50 * UNIT, + y=50 * UNIT, + heading=0, + ) + simulation.environment.foods = { + 1: Food(id=1, x=45 * UNIT, y=50 * UNIT, energy=UNIT) + } + sensors = simulation.sensor_frame_for(1) + assert sensors.food_distance == UNIT + assert sensors.food_bearing == 0 +``` + +Add a separate toroidal fixture that places one founder at `x=UNIT` and one food +item at `x=99 * UNIT`; assert the food distance is less than `UNIT // 10` and the +bearing points along the shortest wrapped direction. The public test helper is +`sensor_frame_for(organism_id)`; keep `_sensor_frame` private. + +- [ ] **Step 2: Implement simulation construction** + +Define: + +```python +@dataclass +class Simulation: + config: SimulationConfig + rng: Rng + environment: Environment + organisms: dict[int, Organism] + ancestor_genome: Genome + tick: int = 0 + next_organism_id: int = 1 + lineage: list[LineageEvent] = field(default_factory=list) + events: list[dict[str, int | str]] = field(default_factory=list) + status: str = "running" +``` + +Implement `Simulation.create(config)` to spawn food first, then founders in +monotonic ID order. Use one owned RNG stream and the exact construction order as +part of schema version 1. + +`organisms` retains both living and dead states for V1 lineage/audit output; +only living states enter snapshots and controller updates. `max_entities` caps +the total retained organism states ever created in the run, so memory remains +bounded and capacity exhaustion has one unambiguous meaning. + +Implement `_sensor_frame(organism, snapshot)` using only own state and snapshot +queries. Compute shortest toroidal `dx/dy`, map it to a discrete target heading +with `direction_for_delta()`, then to signed heading steps with +`heading_delta()`. A candidate is visible only when +`abs(error_steps) <= genome.field_of_view`; choose the visible nearest candidate +by `(distance_squared, id)`. + +Sensor normalization is exact: + +- own energy: `normalize_ratio(energy, config.life.max_energy)`; +- own age: `normalize_ratio(age, config.life.max_age)`; +- target distance: `min(UNIT, isqrt(distance_squared) * UNIT // sensor_range)`; +- target bearing: `error_steps * UNIT // (DIRECTION_COUNT // 2)`; +- density: `min(visible_candidate_count, 8) * UNIT // 8`; +- organism signal: the nearest visible organism's already-stored prior-tick + signal; +- bias: `UNIT`. + +Missing targets use distance `UNIT`, bearing 0, density 0, and signal 0. Organism +candidates always exclude the sensing organism itself. The start-of-tick +snapshot makes signal input a prior-tick value; same-tick emissions are never +visible early. + +Implement `canonical_state()` with exactly these keys: `tick`, `rng_state`, +`next_organism_id`, `next_food_id`, `foods`, `organisms`, `lineage`, and +`status`. Foods and organisms are sorted by ID; lineage is sorted by child ID. +The next-ID counters are authoritative because they change future state. + +Implement module-level `checksum_state(state)` with JSON `sort_keys=True`, +compact separators, and `allow_nan=False`, returning a SHA-256 hex digest. +`state_checksum()` is exactly `checksum_state(self.canonical_state())`. Task 11 +must serialize this same canonical state so artifact validation can recompute the +checksum offline rather than trusting a copied hash string. + +- [ ] **Step 3: Run focused tests and checks** + +Run: + +```bash +uv run pytest tests/core/test_simulation.py -q +uv run ruff check antelab/core/simulation.py tests/core/test_simulation.py +uv run mypy antelab/core/simulation.py +``` + +Expected: initialization and sensor tests pass; Ruff and mypy exit 0. + +- [ ] **Step 4: Commit** + +```bash +git add antelab/core/simulation.py tests/core/test_simulation.py +git commit -m "feat: add deterministic population initialization" +``` + +### Task 10: Implement the authoritative tick and invariant gates + +**Files:** +- Modify: `antelab/core/simulation.py` +- Modify: `tests/core/test_simulation.py` + +- [ ] **Step 1: Add failing tick-loop tests** + +Add tests that prove: + +```python +from dataclasses import replace + +from antelab.core.environment import Food +from antelab.core.fixed import UNIT +from antelab.core.simulation import Simulation +from tests.helpers import make_organism + + +def prepared_contest( + config: SimulationConfig, + insertion_order: tuple[int, int], +) -> Simulation: + contest_config = replace( + config, + world=replace(config.world, initial_food=0, food_regen_per_tick=0), + life=replace(config.life, initial_population=1), + mutation=replace(config.mutation, probability=0, step=0), + ) + simulation = Simulation.create(contest_config) + contenders = { + 1: make_organism(id=1, x=10 * UNIT, y=10 * UNIT, energy=12 * UNIT), + 2: make_organism(id=2, x=10 * UNIT, y=10 * UNIT, energy=12 * UNIT), + } + simulation.organisms = {item_id: contenders[item_id] for item_id in insertion_order} + simulation.next_organism_id = 3 + simulation.environment.foods = { + 1: Food(id=1, x=10 * UNIT, y=10 * UNIT, energy=2 * UNIT) + } + simulation.environment.next_food_id = 2 + return simulation + + +def prepared_capacity_case(config: SimulationConfig) -> Simulation: + capacity_config = replace( + config, + world=replace( + config.world, + initial_food=0, + food_regen_per_tick=0, + max_entities=1, + ), + life=replace( + config.life, + initial_population=1, + initial_energy=config.life.max_energy, + ), + mutation=replace(config.mutation, probability=0, step=0), + ) + return Simulation.create(capacity_config) + + +def prepared_reproduction_contest( + config: SimulationConfig, + *, + seed: int, + insertion_order: tuple[int, int], +) -> Simulation: + contest_config = replace( + config, + seed=seed, + world=replace( + config.world, + initial_food=0, + food_regen_per_tick=0, + max_entities=3, + ), + life=replace( + config.life, + initial_population=1, + initial_energy=config.life.max_energy, + ), + mutation=replace(config.mutation, probability=0, step=0), + ) + simulation = Simulation.create(contest_config) + contenders = { + 1: make_organism(id=1, energy=config.life.max_energy), + 2: make_organism(id=2, energy=config.life.max_energy), + } + simulation.organisms = {item_id: contenders[item_id] for item_id in insertion_order} + simulation.next_organism_id = 3 + return simulation + + +def test_same_seed_produces_same_checksums_for_200_ticks(config: SimulationConfig) -> None: + left = Simulation.create(config) + right = Simulation.create(config) + assert [left.step().checksum for _ in range(200)] == [right.step().checksum for _ in range(200)] + + +def test_contested_food_winner_is_independent_of_dict_insertion_order( + config: SimulationConfig, +) -> None: + left = prepared_contest(config, insertion_order=(1, 2)) + right = prepared_contest(config, insertion_order=(2, 1)) + left.step() + right.step() + assert left.state_checksum() == right.state_checksum() + + +def test_capacity_limit_stops_without_culling(config: SimulationConfig) -> None: + simulation = prepared_capacity_case(config) + result = simulation.step() + assert result.status == "capacity_exceeded" + assert len(simulation.organisms) == config.world.max_entities + + +def test_last_reproduction_slot_is_keyed_not_id_ordered(config: SimulationConfig) -> None: + seed_zero = prepared_reproduction_contest( + config, + seed=0, + insertion_order=(1, 2), + ) + seed_one = prepared_reproduction_contest( + config, + seed=1, + insertion_order=(2, 1), + ) + seed_zero.step() + seed_one.step() + assert seed_zero.lineage[0].parent_id == 2 + assert seed_one.lineage[0].parent_id == 1 + + +def test_tick_energy_ledger_closes_with_food_reproduction_and_regeneration( + config: SimulationConfig, +) -> None: + ledger_config = replace( + config, + world=replace( + config.world, + initial_food=0, + max_food=2, + food_regen_per_tick=1, + max_entities=4, + ), + life=replace( + config.life, + initial_population=1, + initial_energy=20 * UNIT, + max_energy=24 * UNIT, + ), + mutation=replace(config.mutation, probability=0, step=0), + ) + simulation = Simulation.create(ledger_config) + founder = simulation.organisms[1] + simulation.environment.foods = { + 1: Food(id=1, x=founder.x, y=founder.y, energy=2 * UNIT) + } + simulation.environment.next_food_id = 2 + + ledger = simulation.step().energy + + ledger.validate() + assert ledger.food_absorbed == 2 * UNIT + assert ledger.food_created == 2 * UNIT + assert ledger.reproduction_transferred == 6 * UNIT + assert ledger.sensing_spent == founder.genome.sensor_cost + assert ledger.reproduction_spent == founder.genome.reproduction_cost + assert ( + ledger.organism_start + ledger.food_start + ledger.food_created + == ledger.organism_end + + ledger.food_end + + ledger.basal_spent + + ledger.sensing_spent + + ledger.movement_spent + + ledger.signal_spent + + ledger.reproduction_spent + + ledger.food_overflow + ) +``` + +The controlled ledger fixture must consume the colocated food, create one child, +and regenerate one food item; do not weaken it to a tick that exercises only +basal metabolism. + +- [ ] **Step 2: Implement `TickResult` and the tick order** + +Add immutable ledger and result types: + +```python +@dataclass(frozen=True) +class EnergyLedger: + organism_start: int + food_start: int + food_created: int + basal_spent: int + sensing_spent: int + movement_spent: int + signal_spent: int + food_absorbed: int + food_overflow: int + reproduction_transferred: int + reproduction_spent: int + organism_end: int + food_end: int + + def validate(self) -> None: + values = tuple(getattr(self, item.name) for item in fields(self)) + if any(value < 0 for value in values): + raise RuntimeError("energy ledger contains a negative value") + if self.food_start + self.food_created - self.food_end != ( + self.food_absorbed + self.food_overflow + ): + raise RuntimeError("food transfer does not reconcile") + available = self.organism_start + self.food_start + self.food_created + accounted = ( + self.organism_end + + self.food_end + + self.basal_spent + + self.sensing_spent + + self.movement_spent + + self.signal_spent + + self.reproduction_spent + + self.food_overflow + ) + if available != accounted: + raise RuntimeError("energy ledger does not reconcile") + + +@dataclass(frozen=True) +class TickResult: + tick: int + births: int + deaths: int + food_consumed: int + food_spawned: int + energy: EnergyLedger + status: str + checksum: str +``` + +`organism_start` and `organism_end` sum every retained organism state, alive or +dead. Food absorption and reproduction are internal transfers: they are exposed +for audit but appear only once in the conservation equation. Food regeneration +is the only external source in V1; basal metabolism, sensing, movement, +signalling, reproduction overhead, and overflow are the only sinks. +`EnergyLedger.validate()` runs inside `Simulation.step()` before the new state +becomes observable. + +Implement `Simulation.step()` in this exact order: + +1. reject calls unless status is `running`; +2. build a `SpatialSnapshot` from alive start-of-tick organisms and foods; +3. calculate every `SensorFrame` and `EffectorFrame` in sorted organism-ID order; +4. apply movement to copies of each organism and retain each requested movement + charge from `MovementOutcome` without debiting energy yet; +5. group successful eat attempts by food ID; +6. choose each contested food winner with `stable_rank(seed, tick, food_id, + organism_id)`, after comparing squared distance; +7. transfer food energy, record absorbed and overflow energy, and remove consumed + food; +8. set signal to `(genome.signal_strength * effector.signal) // UNIT`, build + `ActionCosts` from basal, sensing, requested movement, and requested signal + costs, then apply `charge_action_energy()` and aggregate its actual debits; +9. collect eligible reproduce attempts, order them by + `(stable_rank(config.seed, self.tick, parent_id), parent_id)`, and process in + that order while aggregating reported reproduction transfer and overhead; + stop with `capacity_exceeded` before creating an entity beyond the configured + cap; +10. resolve deaths without deleting lineage records; +11. spawn at most `food_regen_per_tick` without exceeding `max_food`, recording + exactly `created_count * food_energy` as external energy; +12. construct and validate the energy ledger, replace authoritative organism + state, append events, increment tick, validate invariants, and return + checksum. + +After incrementing, if status is still `running` and `tick == config.ticks`, set +status to `completed` before validation and checksum creation. A subsequent +`step()` call is rejected for every terminal status. + +Conflict selection key must be +`(distance_squared, stable_rank(config.seed, self.tick, food_id, organism_id))`; +raw ID is not a priority key. + +Reproduction opportunity uses keyed rank for the same reason. Parent ID is only +the astronomically unlikely hash-collision fallback; it must never be the first +sort key. The fixed BLAKE2b contract makes seed 0 choose parent 2 and seed 1 +choose parent 1 in the two-parent test above. + +Append only bounded notable events: birth records contain `kind`, `tick`, +`parent_id`, and `child_id`; death records contain `kind`, `tick`, `organism_id`, +and `cause`; the first terminal transition contains `kind="terminal"`, `tick`, +and `status`. Do not append per-tick movement, sensing, food, or signal events. +Because each retained organism can be born and die at most once and there is one +terminal transition, event growth is bounded by `2 * max_entities + 1`. + +- [ ] **Step 3: Implement invariant checks** + +`Simulation.validate()` must raise `RuntimeError` for: + +- an organism outside world bounds; +- negative energy or an organism above configured maximum energy; +- an alive organism with zero energy after death resolution; +- a non-founder missing a lineage edge; +- a founder with a parent, a non-founder with anything other than one parent + edge, a missing parent/child state, a parent field mismatch, a parent ID not + lower than its child ID, or a lineage generation mismatch; +- duplicate IDs or a next ID not greater than all existing IDs; +- invalid genome or controller dimensions; +- signal outside `[0, UNIT]`, an alive organism with a death cause, or a dead + organism without one; +- food outside world bounds or non-positive food energy; +- entity count above the configured cap; +- RNG state outside unsigned 64-bit range, tick outside `[0, config.ticks]`, or + a terminal/running status inconsistent with tick and living population. + +Also validate that dictionary keys equal embedded organism/food IDs and that +embedded IDs are unique; checking dictionary-key uniqueness alone proves +nothing because Python already enforces it. + +Tick-budget completion sets status `completed`; extinction sets status +`extinct`; both return normally. Capacity exhaustion sets status +`capacity_exceeded` and returns normally without adding the extra child. + +- [ ] **Step 4: Run tick-loop tests and the complete core suite** + +Run: + +```bash +uv run pytest tests/core/test_simulation.py -q +uv run pytest tests/core -q +uv run ruff check antelab/core tests/core +uv run mypy antelab/core +``` + +Expected: all core tests pass; Ruff and mypy exit 0. + +- [ ] **Step 5: Commit** + +```bash +git add antelab/core/simulation.py tests/core/test_simulation.py +git commit -m "feat: run deterministic evolutionary ticks" +``` + +### Task 11: Add the versioned minimal artifact + +**Files:** +- Create: `antelab/artifacts/__init__.py` +- Create: `antelab/artifacts/schema.py` +- Create: `antelab/artifacts/writer.py` +- Create: `tests/artifacts/test_writer.py` + +- [ ] **Step 1: Write artifact tests** + +Create `tests/artifacts/test_writer.py` with this byte-identity test: + +```python +from pathlib import Path + +from antelab.artifacts.schema import RunArtifact +from antelab.artifacts.writer import write_artifact +from antelab.core.simulation import Simulation +from tests.helpers import make_config + + +def test_same_run_writes_byte_identical_artifacts(tmp_path: Path) -> None: + simulation = Simulation.create(replace(make_config(), ticks=25)) + metrics: list[dict[str, int | str]] = [] + for _ in range(25): + result = simulation.step() + metrics.append( + { + "tick": result.tick, + "population": sum(item.alive for item in simulation.organisms.values()), + "food": len(simulation.environment.foods), + "births": len(simulation.lineage), + "deaths": sum(not item.alive for item in simulation.organisms.values()), + "max_generation": max(item.generation for item in simulation.organisms.values()), + "total_organism_energy": sum( + item.energy for item in simulation.organisms.values() if item.alive + ), + "genome_diversity": len( + { + item.genome.canonical_key() + for item in simulation.organisms.values() + if item.alive + } + ), + "checksum": result.checksum, + } + ) + artifact = RunArtifact.from_simulation(simulation, tuple(metrics)) + left = tmp_path / "left.json" + right = tmp_path / "right.json" + write_artifact(artifact, left) + write_artifact(artifact, right) + assert left.read_bytes() == right.read_bytes() +``` + +Add focused tests proving schema version, engine version, condition, normalized +config, seed, ancestor genome, terminal status, summary, lineage, metrics, +terminal genome distribution, notable events, canonical final state, and +checksum are present. Organisms and lineage must be sorted canonically. Invalid +lineage, mismatched top-level/final-state lineage, malformed metric keys, a +non-monotonic metric tick, or a recomputed checksum mismatch raises +`ArtifactError`. Prove the output value tree contains no float, set, bytes, UUID, +or unknown object representation. + +- [ ] **Step 2: Implement the artifact schema** + +Define immutable `RunArtifact` with: + +```python +schema_version: int +engine_version: str +run_id: str +condition: str +seed: int +ticks_requested: int +ticks_completed: int +status: str +config: dict[str, object] +ancestor_genome: dict[str, object] +summary: dict[str, int] +metrics: tuple[dict[str, int | str], ...] +lineage: tuple[dict[str, int], ...] +genome_distribution: tuple[dict[str, object], ...] +notable_events: tuple[dict[str, int | str], ...] +final_state: dict[str, object] +final_checksum: str +``` + +`RunArtifact.from_simulation(simulation, metrics)` stores +`simulation.canonical_state()` and verifies that `checksum_state(final_state)` +equals `simulation.state_checksum()`. Compute a 12-hex configuration digest from +canonical normalized configuration and set run ID to +`antelab-v1-{config_digest}-seed-{seed}-ticks-{ticks_completed}`. No timestamp is +allowed in the canonical artifact because it would break byte reproducibility. + +The summary has exactly `population`, `food`, `births`, `deaths`, +`max_generation`, `total_organism_energy`, and `genome_diversity`. Population, +energy, and diversity count living organisms; births are lineage edges; deaths +are retained dead states. The terminal genome distribution groups living +organisms by full canonical genome, stores `{genome, count}` records sorted by +the genome's canonical JSON key, and is therefore a real distribution rather +than a lossy mean. Notable events are the bounded birth, death, extinction, and +capacity events already held by the simulation; food spawn/consume activity +stays in aggregate metrics. + +Implement `validate()` and recursive `assert_canonical_tree()` that allows only +`None`, `bool`, `int`, `str`, lists/tuples of allowed values, and string-keyed +dictionaries of allowed values. It rejects float, set, bytes, UUID, and unknown +objects. Treat bool separately before int so the validator does not depend on +Python's bool/int subclass relationship. + +`validate()` also enforces exact top-level summary and metric key sets; strictly +increasing metric ticks; last metric tick and checksum equal to the terminal +state; run ID/config digest consistency; top-level lineage byte-equivalent to +`final_state["lineage"]`; one valid parent edge per non-founder; and +`checksum_state(final_state) == final_checksum`. This is an offline integrity +check: the source `Simulation` object is not available to the artifact reader. + +- [ ] **Step 3: Implement canonical writing** + +`writer.py` exposes: + +```python +def write_artifact(artifact: RunArtifact, path: Path) -> None: + artifact.validate() + payload = json.dumps( + artifact.to_dict(), + ensure_ascii=True, + sort_keys=True, + separators=(",", ":"), + allow_nan=False, + ) + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(payload + "\n", encoding="utf-8") +``` + +- [ ] **Step 4: Run focused tests and checks** + +Run: + +```bash +uv run pytest tests/artifacts/test_writer.py -q +uv run ruff check antelab/artifacts tests/artifacts +uv run mypy antelab/artifacts +``` + +Expected: artifact tests pass; Ruff and mypy exit 0. + +- [ ] **Step 5: Commit** + +```bash +git add antelab/artifacts/__init__.py antelab/artifacts/schema.py antelab/artifacts/writer.py tests/artifacts/test_writer.py +git commit -m "feat: write canonical evolution artifacts" +``` + +### Task 12: Add the headless runner, experiment fixture, and CLI + +**Files:** +- Create: `antelab/experiments/__init__.py` +- Create: `antelab/experiments/runner.py` +- Create: `antelab/cli.py` +- Create: `experiments/foraging-genesis.yaml` +- Modify: `pyproject.toml` +- Create: `tests/experiments/test_runner.py` +- Create: `tests/test_cli.py` + +- [ ] **Step 1: Write runner and CLI tests** + +Tests must prove: + +```python +import subprocess +import sys +from pathlib import Path + +from antelab.experiments.runner import run_experiment + +CONFIG_PATH = Path("experiments/foraging-genesis.yaml") + + +def test_runner_stops_at_tick_budget_and_writes_artifact(tmp_path: Path) -> None: + output = tmp_path / "run.json" + result = run_experiment(CONFIG_PATH, output=output, tick_override=25) + assert result.ticks_completed == 25 + assert output.exists() + + +def test_cli_reports_extinction_as_successful_experiment(tmp_path: Path) -> None: + extinction_config = tmp_path / "extinction.yaml" + extinction_config.write_text( + """schema_version: 1 +condition: uncontrolled_baseline +seed: 3 +ticks: 4 +world: + width: 10240 + height: 10240 + initial_food: 0 + max_food: 0 + food_energy: 1024 + food_regen_per_tick: 0 + max_entities: 4 +life: + initial_population: 1 + initial_energy: 1024 + max_energy: 2048 + max_age: 1 + reproduction_cooldown: 10 +mutation: {probability: 0, step: 0} +""", + encoding="utf-8", + ) + output = tmp_path / "extinct.json" + completed = subprocess.run( + [ + sys.executable, + "-m", + "antelab.cli", + "run", + str(extinction_config), + "--output", + str(output), + ], + check=False, + capture_output=True, + text=True, + ) + assert completed.returncode == 0 + assert "status=extinct" in completed.stdout +``` + +Also test exit code 2 for invalid config and exit code 3 for broken engine +invariants. + +- [ ] **Step 2: Create the first experiment configuration** + +Create `experiments/foraging-genesis.yaml`: + +```yaml +schema_version: 1 +condition: uncontrolled_baseline +seed: 42 +ticks: 5000 +world: + width: 204800 + height: 204800 + initial_food: 320 + max_food: 512 + food_energy: 4096 + food_regen_per_tick: 1 + max_entities: 2048 +life: + initial_population: 64 + initial_energy: 12288 + max_energy: 32768 + max_age: 2500 + reproduction_cooldown: 64 +mutation: + probability: 64 + step: 32 +``` + +- [ ] **Step 3: Implement the runner** + +`run_experiment(config_path, output, tick_override=None)` must: + +1. load and validate config; +2. apply a positive tick override by returning a replaced immutable config; +3. create a simulation; +4. collect one metrics record every 10 ticks and at terminal state, replacing + rather than duplicating a record when the terminal tick is divisible by 10; +5. stop at requested ticks or terminal status; +6. construct, validate, and write `RunArtifact`; +7. return the artifact. + +Metrics records contain exactly `tick`, `population`, `food`, cumulative +`births`, cumulative `deaths`, `max_generation`, `total_organism_energy`, +`genome_diversity`, and `checksum`. Population, energy, and diversity cover +living organisms. Births equal the cumulative lineage-edge count; deaths equal +the cumulative retained dead-state count. The checksum is the state checksum at +that metric tick, not an artifact-file hash. + +- [ ] **Step 4: Implement CLI exit codes** + +`antelab/cli.py` uses argparse with one command: + +```text +antelab run CONFIG --output PATH [--ticks N] +``` + +`main(argv=None) -> int` returns: + +- 0 for completed, extinct, or capacity-exceeded experimental outcomes with a + valid artifact; +- 2 for CLI or configuration errors; +- 3 for engine invariant or artifact validation failures. + +Print one stable summary line: + +```text +run_id= status= ticks= population= checksum= +``` + +Add `if __name__ == "__main__": raise SystemExit(main())` for module execution. + +Only now that `antelab/cli.py` exists, add the installed command atomically in +`pyproject.toml`: + +```toml +[project.scripts] +antelab = "antelab.cli:main" +``` + +- [ ] **Step 5: Run runner, CLI, and full tests** + +Run: + +```bash +uv run pytest tests/experiments/test_runner.py tests/test_cli.py -q +uv run pytest -q +uv run ruff check antelab tests +uv run mypy antelab +``` + +Expected: all tests pass; Ruff and mypy exit 0. + +- [ ] **Step 6: Commit** + +```bash +git add antelab/experiments/__init__.py antelab/experiments/runner.py antelab/cli.py experiments/foraging-genesis.yaml pyproject.toml tests/experiments/test_runner.py tests/test_cli.py +git commit -m "feat: run headless evolution experiments" +``` + +### Task 13: Add repeatability and local performance verification + +**Files:** +- Create: `scripts/benchmark_kernel.py` +- Modify: `.github/workflows/ci.yml` +- Modify: `Makefile` +- Modify: `README.md` +- Modify: `RUNNING.md` +- Modify: `ARCHITECTURE.md` +- Test: complete repository + +- [ ] **Step 1: Implement the benchmark script** + +Create `scripts/benchmark_kernel.py`: + +```python +from __future__ import annotations + +import argparse +import tempfile +import time +from pathlib import Path + +from antelab.experiments.runner import run_experiment + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser() + parser.add_argument("--config", type=Path, required=True) + parser.add_argument("--ticks", type=int, default=5000) + parser.add_argument("--max-seconds", type=float, default=30.0) + parser.add_argument("--enforce", action="store_true") + args = parser.parse_args(argv) + if args.ticks <= 0 or args.max_seconds <= 0: + parser.error("ticks and max-seconds must be positive") + + started = time.perf_counter() + with tempfile.TemporaryDirectory(prefix="antelab-benchmark-") as directory: + artifact = run_experiment( + args.config, + output=Path(directory) / "run.json", + tick_override=args.ticks, + ) + elapsed = time.perf_counter() - started + rate = artifact.ticks_completed / elapsed + population = artifact.summary["population"] + print( + f"elapsed={elapsed:.6f} ticks_per_second={rate:.2f} " + f"population={population} checksum={artifact.final_checksum}" + ) + return int(args.enforce and elapsed > args.max_seconds) + + +if __name__ == "__main__": + raise SystemExit(main()) +``` + +The script writes only one temporary final artifact and removes it on exit; it +does not emit per-tick files. + +The default command is: + +```text +python scripts/benchmark_kernel.py --config experiments/foraging-genesis.yaml --ticks 5000 --max-seconds 30 +``` + +- [ ] **Step 2: Run byte-level repeatability verification** + +Run: + +```bash +uv run antelab run experiments/foraging-genesis.yaml --ticks 500 --output /tmp/antelab-run-a.json +uv run antelab run experiments/foraging-genesis.yaml --ticks 500 --output /tmp/antelab-run-b.json +cmp /tmp/antelab-run-a.json /tmp/antelab-run-b.json +shasum -a 256 /tmp/antelab-run-a.json /tmp/antelab-run-b.json +``` + +Expected: `cmp` exits 0 and both SHA-256 values are identical. + +- [ ] **Step 3: Run the local smoke performance budget** + +Run: + +```bash +uv run python scripts/benchmark_kernel.py --config experiments/foraging-genesis.yaml --ticks 5000 --max-seconds 30 --enforce +``` + +Expected on the current arm64/Python 3.12.11 reference host: exit 0, elapsed time +at most 30 seconds, and a 64-character checksum. If this fails, profile before +changing the budget. Do not weaken correctness or determinism to pass timing. + +- [ ] **Step 4: Enable script checks and update human documentation** + +Now that `scripts/benchmark_kernel.py` exists, update Makefile lint/typecheck and +the two matching CI commands from `antelab tests` / `antelab` to +`antelab tests scripts` / `antelab scripts`. Update README and RUNNING with the +exact passing setup, run, repeatability, and benchmark commands. Update +ARCHITECTURE with the final module map and the actual numeric contract. Do not +claim adaptation, intelligence, or open-ended evolution; this plan proves only a +functioning deterministic evolutionary substrate. + +- [ ] **Step 5: Run the final verification gate** + +Run: + +```bash +uv lock --check +uv run ruff check antelab tests scripts +uv run mypy antelab scripts +uv run pytest -q +uv build +git diff --check +git status --short --branch +``` + +Expected: + +- lockfile check exits 0; +- Ruff and mypy exit 0; +- all tests pass with zero failures; +- source and wheel builds succeed; +- diff check is empty; +- status contains only the intended documentation and benchmark changes. + +- [ ] **Step 6: Commit** + +```bash +git add scripts/benchmark_kernel.py .github/workflows/ci.yml Makefile README.md RUNNING.md ARCHITECTURE.md +git commit -m "docs: verify deterministic evolution kernel" +``` + +## Approved-Design Coverage Audit + +| Approved contract | Implemented by | Evidence gate | +| --- | --- | --- | +| Stable toroidal physics and integer numerics | Tasks 2, 6, 7, 10 | Geometry, wrap, invariant, and cross-run checksum tests | +| No explicit fitness score | Tasks 5, 8, 10 | Reproduction depends only on controller attempt, energy, cooldown, and capacity | +| Declared energy sources, transfers, and sinks | Tasks 4, 7, 8, 10 | Per-tick closed `EnergyLedger` including sensing and reproduction overhead | +| Local information and bounded effectors | Tasks 5, 6, 9 | Ten-value local sensor and five-value effector tests | +| Owned deterministic randomness | Tasks 3, 9, 10 | SplitMix64 vectors, canonical RNG state, keyed conflict ordering | +| Inherited mutation and asexual lineage | Tasks 4, 8, 10 | Zero/full mutation, parentage, generation, and lineage invariants | +| Explicit extinction and safety limits | Tasks 3, 10, 12 | Terminal-status and CLI exit-code tests | +| Headless engine/observer separation | Tasks 1, 12 | Dependency audit and no API/frontend/network core | +| Reproducible, offline-verifiable artifact | Tasks 9, 11, 12, 13 | Canonical final state, recomputed checksums, byte comparison | +| One-command local experiment | Tasks 12, 13 | Installed CLI smoke run and documented reproduction command | + +The following approved-design items remain intentionally outside this first +kernel plan: fertility zones, statistical control runs, adaptation claims, +ancestor replay, checkpoints/resume, compressed replay, comparison/verification +commands, HTTP/WebSocket APIs, observer UI, lifetime learning, sexual +reproduction, predation, seasons, co-evolving environments, and LLM observer +plugins. They require later plans and cannot be smuggled into this slice. + +## Final Acceptance Gate + +The first implementation slice is complete only when all statements below are +backed by fresh command output: + +- the historical company, receipt, LLM, generated demo, old frontend, and old + specs are absent from the committed tree; +- `git ls-tree -r --name-only HEAD` contains only the locked new tree plus GitHub + metadata generated by the implementation; +- no default or optional core dependency performs network calls; +- same config, seed, and ticks produce byte-identical artifacts; +- mutation disabled creates genetically identical children; +- mutation enabled is deterministic and bounded; +- every non-founder has exactly one valid lineage edge; +- energy cannot be negative and parent-plus-child energy equals pre-reproduction + energy minus the declared reproduction overhead; +- extinction and capacity exhaustion are valid explicit outcomes; +- the full test, lint, typecheck, build, repeatability, and smoke performance + gates pass. + +The next project after this gate is the separately planned evolution proof +harness. It must not be folded into this implementation opportunistically. diff --git a/docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md b/docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md new file mode 100644 index 0000000..3afc50d --- /dev/null +++ b/docs/superpowers/specs/2026-07-10-digital-evolution-core-reboot-design.md @@ -0,0 +1,630 @@ +# AnteLab Digital Evolution Core Reboot + +> Status: Approved product direction; implementation pending written-spec review +> Date: 2026-07-10 +> Scope: Product identity, evolutionary substrate, V1 architecture, proof standard, +> repository reset boundary + +## 1. Decision + +AnteLab will be rebooted as an open-source digital evolution laboratory. + +The product is no longer primarily an AI reality show, a company simulator, an +agent receipt layer, or an LLM-agent benchmark. Those ideas may survive only as +historical context or subordinate instrumentation. + +The new product thesis is: + +> Start with primitive organisms and stable physics. Watch behavior, lineages, +> species, and ecosystems emerge across generations. + +The V1 headline is: + +> **No prompts. No goals. Just physics, mutation, and selection.** + +The core V1 mechanism is cross-generational population evolution. Lifetime +learning and neural plasticity are Phase 2. Co-evolving environments are Phase 3. +LLMs are optional observers or later cognition plugins, never the default life +substrate. + +## 2. Problem + +The previous AnteLab stack had lifecycle mechanics, deterministic experiments, +replay, and a visual observer, but it did not implement biological evolution. + +In the last committed implementation: + +- agents were initialized from hand-authored personalities; +- every active agent delegated its decision to the same configured LLM; +- newborns received the same LLM and a fixed newborn personality; +- births and deaths existed, but genomes, heredity, recombination, mutation, and + genotype-to-phenotype mapping did not; +- company, receipt, narrative, and observer concerns dominated the product; +- free-form natural-language actions made behavior expressive but prevented a + clean, evolvable sensor-to-effector contract. + +This can produce a society simulation, but it cannot support the claim that +behavior evolved from primitive beginnings. Pretrained model behavior would be +mistaken for emergence, and per-agent LLM calls would make large populations and +long evolutionary runs too expensive. + +## 3. Product Goals + +V1 must make five things simultaneously true. + +### 3.1 Watchable + +A user can open the local web experience and immediately see organisms moving, +feeding, reproducing, dying, branching into lineages, and changing across time. + +### 3.2 Evolutionary + +Every surviving behavioral difference must be traceable to heritable variation +and differential reproduction under environmental pressure. Birth alone is not +evolution. + +### 3.3 Reproducible + +The same engine version, configuration, seed, and tick count must produce the +same simulation checksum and lineage graph on supported platforms. + +### 3.4 Falsifiable + +AnteLab must not label visual novelty as evolution without controls. Evolutionary +claims require ancestor comparisons, mutation-disabled controls, repeated seeds, +and machine-readable artifacts. + +### 3.5 Extensible + +Contributors must be able to add environments, genes, sensors, effectors, +mutation operators, observers, metrics, and visualization layers without editing +an all-purpose world module. + +## 4. Non-Goals for V1 + +V1 will not include: + +- LLM calls in the organism decision loop; +- free-form natural-language actions; +- company formation, valuation, IPO, hiring, departments, or market scenarios; +- public agent upload, public leaderboards, accounts, or hosted evaluation; +- agent truthfulness or receipt verification as the product identity; +- sexual reproduction or recombination; +- learned language, culture, tool use, or multi-agent institutions; +- arbitrary user code execution; +- GPU-only execution; +- claims of open-ended intelligence or indefinite complexity growth; +- simultaneous co-evolution of organisms and environments; +- backward compatibility with historical company or receipt artifacts. + +These exclusions are not judgments that the features lack future value. They +protect the first proof from ambiguity and infrastructure sprawl. + +## 5. First-Principles Constraints + +### 5.1 Stable Physics, Unstructured Initial Conditions + +"Chaos" means an unorganized population with random positions and small genetic +variation. It does not mean constantly changing causal rules. Selection cannot +accumulate information when useful adaptations stop being useful before they can +be inherited. + +### 5.2 No Explicit Fitness Score + +The engine does not award an abstract fitness number. An organism succeeds only +by remaining alive long enough to reproduce. Analysis may compute descriptive +fitness proxies after the fact, but those metrics do not directly select parents. + +### 5.3 Energy and Matter Accounting + +Movement, sensing, signalling, metabolism, and reproduction consume energy. +Food adds bounded energy and is created only by declared environment processes. +Reproduction transfers energy from parent to child. State updates must not create +unaccounted energy. + +### 5.4 Local Information + +Organisms receive only local sensor values and their own internal state. They do +not receive the global map, lineage rankings, population metrics, or hidden food +locations. + +### 5.5 Bounded Evolvable Interface + +Organism behavior is a deterministic mapping from a fixed V1 sensor vector to a +fixed V1 effector vector. A bounded interface makes genotype mutation, +inheritance, replay, testing, and causal analysis possible. + +### 5.6 Engine and Observer Separation + +Rendering, narrative summaries, metrics dashboards, and artifact exploration +must not influence simulation state. The headless engine is authoritative. + +### 5.7 Deterministic Numerics + +Authoritative positions, headings, energy values, gene values, controller +weights, and controller activations use documented fixed-point integer units. +Rendering may convert those values to floating point, but rendered values never +feed back into the engine. + +The V1 controller uses a bounded integer activation function or a versioned +lookup table rather than platform-dependent transcendental functions. The engine +owns all random streams; authoritative code must not use module-global random +state. These constraints make state checksums meaningful across supported CPU +platforms instead of merely repeatable on one developer machine. + +## 6. V1 World + +V1 uses a continuous two-dimensional toroidal world. Crossing one boundary +returns the organism on the opposite side. This avoids boundary death becoming +the dominant evolutionary strategy while keeping spatial distance meaningful. + +The world contains: + +- organisms; +- food particles or patches; +- a deterministic food regeneration process; +- optional spatially varying but time-stable fertility zones; +- no predators, obstacles, seasons, disease, weather, crafting, or company + systems in the first proof. + +The initial population is randomly positioned. The initial genomes are derived +from one primitive ancestor genome plus bounded mutations. Completely arbitrary +random neural networks are not required; most would be inert and would turn the +first release into an extinction simulator rather than an evolution experiment. + +## 7. V1 Digital Organism + +Each organism has an immutable identity, a parent identity, a generation number, +a genome, a phenotype, and runtime state. + +Runtime state includes: + +- position and heading; +- linear speed; +- energy; +- age; +- alive/dead state; +- last reproduction tick; +- optional emitted signal value; +- cumulative food consumed and offspring count for analysis only. + +### 7.1 Genome + +The V1 genome contains bounded numeric genes for: + +- body radius; +- maximum thrust; +- turn rate; +- basal metabolism; +- movement energy cost; +- sensor range; +- field of view; +- reproduction energy threshold; +- reproduction energy allocation; +- signal strength and signal cost; +- organism color channels for visible lineage variation; +- neural-controller weights and biases. + +Every gene declares its range, mutation scale, and mutation probability. Mutation +must clamp or transform values into valid ranges. Genome serialization is +canonical and versioned. + +### 7.2 Sensors + +The fixed V1 sensor vector is: + +1. normalized own energy; +2. normalized own age; +3. nearest-food distance within sensor range; +4. signed nearest-food bearing; +5. local food density; +6. nearest-organism distance within sensor range; +7. signed nearest-organism bearing; +8. nearest-organism signal value; +9. local organism density; +10. constant bias input. + +Missing targets use stable sentinel values defined by the engine contract. + +### 7.3 Controller + +V1 uses a small, fixed-topology, fixed-point feed-forward neural network. Weights +and biases are inherited and mutated. A fixed topology is intentionally less +ambitious than NEAT-style topology evolution, but is easier to test, serialize, +visualize, and run at population scale. + +Topology evolution becomes a separate future design only after weight evolution +shows repeatable adaptation. + +### 7.4 Effectors + +The controller emits bounded values for: + +1. turn left/right; +2. forward thrust; +3. eat attempt; +4. signal emission; +5. reproduce attempt. + +The world resolves outputs against physics. An output is not guaranteed to +succeed. For example, eating requires food within reach, and reproduction +requires minimum energy and cooldown conditions. + +### 7.5 Reproduction + +V1 reproduction is asexual. + +When reproduction succeeds: + +- the parent pays a configured energy cost; +- a configured portion of energy is transferred to the child; +- the child genome is a mutated copy of the parent genome; +- the child is placed near the parent without overlapping invalid geometry; +- a lineage edge and birth event are recorded; +- the child begins with no lifetime memory or learned state. + +Asexual reproduction isolates heredity and mutation. Sexual reproduction, +recombination, mate choice, and parental investment are postponed until the +baseline lineage system is proven. + +### 7.6 Death + +An organism dies when energy reaches zero or maximum age is exceeded. Dead +organisms are removed from active decision updates. V1 does not recycle carcass +matter; if added later, it must be included in matter accounting. + +## 8. Simulation Loop + +Each tick runs in this order: + +1. build spatial index; +2. read immutable sensor snapshots for all living organisms; +3. evaluate every controller; +4. resolve movement from the shared start-of-tick snapshot; +5. resolve eating conflicts using a deterministic keyed tie-breaker derived from + the run seed, tick, resource identity, distance, and contender identities; +6. resolve signalling; +7. charge metabolism and action costs; +8. resolve reproduction; +9. resolve deaths; +10. regenerate declared food; +11. record metrics, events, lineage changes, and optional checkpoint; +12. advance the tick. + +All organisms perceive the start-of-tick state. No organism sees another +organism's action from the same tick. This preserves deterministic synchronous +semantics and prevents order-dependent perception. Raw organism ID ordering must +not systematically decide contested resources or reproduction opportunities. + +## 9. Architecture + +The proposed Python package boundaries are: + +```text +antelab/ + core/ + config.py # validated, versioned simulation configuration + rng.py # simulation-owned deterministic random streams + genome.py # gene schema, canonical serialization, mutation + brain.py # fixed-topology controller and sensor/effector contracts + organism.py # organism identity, phenotype, and runtime state + environment.py # food fields and stable world processes + spatial.py # neighbor and food queries + physics.py # movement, reach, energy, and collision rules + evolution.py # reproduction, inheritance, mutation, lineage events + simulation.py # authoritative tick orchestration + experiments/ + runner.py # headless single and multi-seed execution + controls.py # mutation-off and ancestor-replay controls + metrics.py # descriptive population and adaptation metrics + artifacts/ + schema.py # versioned run, event, checkpoint, and lineage contracts + writer.py # bounded streaming artifact output + api/ + server.py # local read/control API over one simulation owner +``` + +The frontend remains a separate application and consumes only versioned API or +artifact contracts. No frontend component imports or reimplements engine logic. + +## 10. Public Interfaces + +### 10.1 CLI + +The intended V1 commands are: + +```text +antelab run experiments/foraging-genesis.yaml --seed 42 --ticks 10000 +antelab compare artifacts/run-a.json artifacts/run-b.json +antelab verify artifacts/run.json +antelab serve artifacts/run.json +``` + +Exact command names may change in the implementation plan, but the user journey +must stay one-command local and must not require an API key. + +### 10.2 Artifact + +Every run artifact contains: + +- schema and engine version; +- complete normalized configuration; +- seed and deterministic run identity; +- initial ancestor genome; +- final population summary; +- time-series population, energy, food, birth, death, and diversity metrics; +- lineage nodes and edges; +- sampled phenotype/genome distributions; +- declared control condition; +- periodic state checksums; +- notable-event references; +- optional checkpoint paths. + +Large per-tick organism state must be stored in bounded checkpoints or compressed +replay chunks, not repeated in one unbounded JSON document. + +### 10.3 Observer + +The V1 observer has one primary screen: + +- full-bleed living world; +- play, pause, step, speed, and scrub controls; +- population, food, generation, and simulation-time indicators; +- selectable organism inspection; +- ancestor and descendant navigation; +- genome/phenotype comparison; +- lineage tree; +- population and trait-distribution charts; +- notable-event timeline; +- visible seed and configuration identity. + +The first screen is the simulation, not a marketing landing page and not an +operations dashboard. + +## 11. Proof Experiment + +V1 is not complete merely when organisms animate and reproduce. It must pass a +predefined experiment. + +### 11.1 Treatment + +- stable foraging world; +- primitive ancestor controller; +- mutation enabled; +- multiple independent seeds; +- fixed tick budget per seed. + +### 11.2 Controls + +- identical configuration with mutation disabled; +- ancestor genome replayed in the final environment; +- deterministic rerun of at least one treatment seed. + +### 11.3 Evidence + +The report compares descendants with ancestors and controls using: + +- food acquired per unit energy spent; +- lifetime reproductive success; +- population persistence; +- generation depth; +- genome and phenotype diversity; +- lineage survival distribution; +- adaptation retention when descendants are replayed from a clean initial state. + +Exact success thresholds will be preregistered in the implementation plan after +a calibration-only baseline. Thresholds must not be selected after inspecting +the final treatment result. + +### 11.4 Claim Boundary + +Passing the proof supports only this claim: + +> Heritable controller and trait variation produced repeatable improvement in +> foraging and reproduction under the declared environment. + +It does not support claims of intelligence, consciousness, open-ended evolution, +culture, or general adaptation. + +## 12. Testing and Verification + +Required test layers: + +### Unit + +- canonical genome round-trip; +- deterministic mutation with fixed RNG state; +- mutation range enforcement; +- controller shape and bounded outputs; +- sensor sentinel behavior; +- energy debit and transfer accounting; +- reproduction inheritance; +- death conditions; +- toroidal distance and movement. + +### Integration + +- identical seeds produce identical state checksums and lineage graphs; +- different seeds can diverge without violating invariants; +- headless run completes without frontend or API dependencies; +- artifacts validate against the declared schema; +- checkpoints resume to the same terminal checksum as uninterrupted execution; +- mutation-disabled controls produce no genetic divergence. + +### Property and Invariant + +- organism energy never becomes NaN or negative after resolution; +- genome values always remain in declared ranges; +- every non-founder organism has exactly one valid parent in V1; +- generation equals parent generation plus one; +- total energy changes only through declared food generation, metabolism, and + configured sinks/sources; +- the observer cannot mutate engine state except through explicit control APIs. + +### Performance + +The implementation plan must define a CPU reference machine and population/tick +budget. V1 must run a meaningful multi-generation proof without CUDA, a discrete +GPU, or network calls. + +## 13. Error Handling + +- Invalid configs fail before simulation startup with field-specific errors. +- Invalid or incompatible artifact versions fail explicitly; they are never + silently reinterpreted. +- A population extinction is a valid experimental result, not an engine error. +- Numeric instability, NaN, broken lineage references, checksum mismatch, or + unaccounted energy are engine errors and fail the run. +- A configured entity or artifact-size safety limit stops the run with an + explicit `capacity_exceeded` outcome. The engine must not silently cull a + population to stay within resource limits. +- The API reports simulation failure separately from a scientifically valid + extinction outcome. + +## 14. Open-Source Contribution Model + +The repository will support contributions in separately reviewable categories: + +- `experiments/`: environment and treatment/control definitions; +- `organisms/`: canonical ancestor genomes and discovered lineages; +- `antelab/core/`: engine primitives and evolutionary mechanisms; +- `antelab/experiments/`: metrics and proof methodology; +- `frontend/`: observer and analysis tools; +- `docs/discoveries/`: reproducible findings with artifact references. + +Shared genomes and runs must declare engine version, schema version, seed, +license, and reproduction command. Generated bulk artifacts stay outside Git by +default; curated small fixtures and discoveries may be committed. + +## 15. Repository Reset Boundary + +The current working tree already marks the entire historical project as deleted, +while the Git object history remains intact. The reboot will treat Git history as +the archive instead of restoring obsolete files into an `archive/` directory. + +### 15.1 Keep or Recreate + +The reboot keeps or recreates only: + +- Git history and repository identity; +- project license, after confirming its intended reuse; +- a minimal Python package and dependency definition; +- focused CI for the new engine; +- the approved digital-evolution design and future implementation plan; +- a rewritten README, contribution guide, architecture guide, and runbook; +- new engine, experiment, artifact, API, frontend, and test files; +- selectively ported deterministic-run, artifact, replay, and visualization ideas + when they fit the new contracts. + +### 15.2 Permanently Retire from the New Tree + +The new tree will not restore: + +- company market, organization, valuation, space, cast, season, and shock code; +- company scenarios and generated company replay artifacts; +- LLM client and narrative code as a default dependency; +- receipt-first product code, receipt demo fixtures, and receipt-specific UI; +- historical company, observer, receipt, and artifact-workbench specs; +- historical screenshots, UI scan passes, videos, and QA checkpoints; +- tests whose only purpose is retired behavior; +- obsolete Docker, workflow, configuration, and documentation files; +- generated data that can be reproduced from source. + +### 15.3 Selective Salvage Rule + +No historical file is restored wholesale merely because some logic may be useful. +Implementation may read `HEAD:` and port the smallest justified behavior +into the new structure with new tests. This prevents old product assumptions from +re-entering through copied modules. + +### 15.4 Git Safety Rule + +The implementation must never use bulk staging. Each commit explicitly stages +the new files and intended deletions for one coherent slice. Before every commit: + +```text +git diff --cached --name-status +git diff --cached --stat +``` + +must be reviewed. Existing deletions are not committed until the replacement +skeleton and its validation for that slice are present. + +## 16. Delivery Phases + +This reboot is too large for one implementation plan. It is decomposed into +independently reviewable subprojects: + +1. **Deterministic evolution kernel:** repository skeleton, validated config, + owned RNG streams, genome, fixed controller, organism state, spatial queries, + physics, food, energy, asexual reproduction, mutation, death, lineage, a + headless runner, and a minimal artifact. This is the only scope of the first + implementation plan. +2. **Evolution proof harness:** treatment/control orchestration, ancestor replay, + multi-seed metrics, checkpoints, comparison reports, and preregistered proof + thresholds. +3. **Watchable observer:** local API, replay transport, living-world renderer, + organism inspector, lineage tree, charts, and notable-event navigation. +4. **Advanced evolution:** lifetime learning, richer ecology, sexual + reproduction, topology evolution, and co-evolving environments. Each advanced + mechanism requires its own design approval before implementation. + +The first plan may prepare interfaces needed by later subprojects, but it must +not implement their behavior speculatively. + +### Phase 0: Repository Reboot Skeleton + +- minimal package, tests, CI, README, license, and configuration; +- no historical runtime restored; +- deterministic RNG and config contracts established. + +### Phase 1: Real Evolution Core + +- genome, controller, organism, physics, food, energy, asexual reproduction, + mutation, death, lineage, headless runner, and artifacts; +- proof experiment and controls run headlessly. + +### Phase 2: Watchable Observer + +- local API, replay/checkpoints, living-world renderer, organism inspector, + lineage tree, charts, and notable events; +- one-command local demo without API keys. + +### Phase 3: Lifetime Learning + +- inherited plasticity genes and bounded within-life adaptation; +- experiments separating inherited behavior from learned behavior; +- Baldwin-effect-style analyses only after the baseline is stable. + +### Phase 4: Co-evolution and Richer Ecology + +- sexual reproduction and recombination; +- predators, carcass recycling, signals/pheromones, obstacles, niches; +- environment mutation and organism-environment co-evolution; +- topology evolution or modular body plans; +- optional LLM observer or high-level cognition plugin. + +## 17. Acceptance Criteria for This Design + +This design is ready for implementation planning when the user confirms all of +the following: + +1. Cross-generational population evolution is the V1 product identity. +2. LLMs are excluded from the default organism loop. +3. V1 uses a 2D continuous toroidal world and a fixed-topology inherited neural + controller. +4. V1 uses asexual reproduction and postpones lifetime learning. +5. The repository is rebooted in place, with Git history as the archive and old + product files permanently absent from the new tree. +6. The first release is not accepted until it passes a controlled, + machine-readable adaptation experiment. + +## 18. Deferred Decisions + +The implementation plan may choose concrete numeric defaults for population +size, tick rate, mutation rates, world dimensions, food regeneration, checkpoint +cadence, and proof thresholds after a clearly labeled calibration run. + +It may not change the product identity, inheritance model, no-LLM baseline, +headless-engine authority, or falsifiable-proof requirement without a design +revision approved by the user. diff --git a/experiments/company-founder-duo.yaml b/experiments/company-founder-duo.yaml deleted file mode 100644 index 4f868c5..0000000 --- a/experiments/company-founder-duo.yaml +++ /dev/null @@ -1,74 +0,0 @@ -extends: "../antelab/config/default.yaml" - -world: - name: "Founder Duo" - initial_locations: - - "garage_office" - - "customer_row" - - "supply_market" - location_graph: - garage_office: ["customer_row", "supply_market"] - customer_row: ["garage_office"] - supply_market: ["garage_office"] - location_items: - garage_office: - laptop: 2 - prototype: 1 - supply_market: - parts: 12 - -scenario: - id: company-founder-duo - title: "Founder Duo" - hypothesis: "Two co-founders with complementary skills survive longer than a solo founder." - counter_hypothesis: "Co-founder disagreement and role ambiguity create friction that kills the company faster." - tags: [company, founders, partnership, organization] - -company: - enabled: true - name: "Duo Works" - stage: "founder-duo" - cash: 24 - operating_cost_per_tick: 3 - demand_streams: - - request_id: "first-prototype" - description: "Ship the first working prototype" - required_item: "prototype" - reward: 30 - deadline_tick: 10 - - request_id: "customer-pilot" - description: "Run a paid pilot with early adopters" - required_item: "prototype" - reward: 40 - deadline_tick: 20 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 8 - role_claims: ["operations"] - -experiment: - name: "company-founder-duo" - description: "Two co-founders — one visionary, one executor — navigating startup dynamics." - seed: 33 - axioms: - perception: "local" - communication: "colocated" - social_tracking: true - auto_eat: false - mortality: true - memory_size: 50 - -agents: - - name: "Avery" - personality: "Visionary founder; sees the future, pitches the dream, terrible at follow-through." - location: "garage_office" - inventory: - prototype: 1 - - name: "Jordan" - personality: "Executor co-founder; turns vision into checklists, manages the burn rate, grows resentful of undefined roles." - location: "garage_office" - inventory: - laptop: 1 diff --git a/experiments/company-genesis.yaml b/experiments/company-genesis.yaml deleted file mode 100644 index 0c37549..0000000 --- a/experiments/company-genesis.yaml +++ /dev/null @@ -1,70 +0,0 @@ -extends: "../antelab/config/default.yaml" - -world: - name: "Company Genesis" - initial_locations: - - "garage_office" - - "customer_row" - - "supply_market" - location_graph: - garage_office: ["customer_row", "supply_market"] - customer_row: ["garage_office"] - supply_market: ["garage_office"] - location_items: - garage_office: - laptop: 1 - prototype: 1 - supply_market: - parts: 8 - recipes: - prototype: - inputs: - parts: 2 - outputs: - prototype: 1 - -scenario: - id: company-genesis - title: "Company Genesis" - hypothesis: "A lone founder can externalize work and survive early demand pressure." - counter_hypothesis: "The founder remains a single-point bottleneck and the company collapses." - tags: [company, founder, survival, organization] - -company: - enabled: true - name: "Genesis Works" - stage: "founder" - cash: 20 - operating_cost_per_tick: 2 - demand_streams: - - request_id: "first-prototype" - description: "Ship the first working prototype" - required_item: "prototype" - reward: 30 - deadline_tick: 8 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 8 - role_claims: ["operations"] - -experiment: - name: "company-genesis" - description: "Single-founder company pressure seed." - seed: 42 - axioms: - perception: "local" - communication: "colocated" - social_tracking: true - auto_eat: false - mortality: true - memory_size: 50 - -agents: - - name: "Avery" - personality: "Solo founder; notices customer pressure, protects cash, and writes down what can outlive them." - location: "garage_office" - inventory: - prototype: 1 diff --git a/experiments/company-hostile-market.yaml b/experiments/company-hostile-market.yaml deleted file mode 100644 index ebc93e0..0000000 --- a/experiments/company-hostile-market.yaml +++ /dev/null @@ -1,41 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-hostile-market - title: "Company Hostile Market" - hypothesis: "A cash-strapped founder facing aggressive deadlines learns to operate lean or dies." - counter_hypothesis: "Under extreme time and cash pressure, the founder cannot deliver before burn kills the company." - tags: [company, survival, pressure, market] - -company: - stage: "hostile-market" - cash: 8 - operating_cost_per_tick: 3 - demand_streams: - - request_id: "urgent-prototype" - description: "Ship a prototype NOW or lose the only customer" - required_item: "prototype" - reward: 12 - deadline_tick: 4 - - request_id: "second-chance" - description: "A desperate follow-up order with a tight window" - required_item: "prototype" - reward: 12 - deadline_tick: 10 - - request_id: "final-ultimatum" - description: "Last chance — deliver or the market writes you off" - required_item: "prototype" - reward: 15 - deadline_tick: 16 - candidate_pool: - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 12 - role_claims: ["builder"] - -experiment: - name: "company-hostile-market" - description: "Minimal cash, aggressive deadlines — survival of the fastest." - seed: 13 diff --git a/experiments/company-late-shock.yaml b/experiments/company-late-shock.yaml deleted file mode 100644 index 821b6de..0000000 --- a/experiments/company-late-shock.yaml +++ /dev/null @@ -1,64 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-late-shock - title: "Company Late Shock" - hypothesis: "An established team with artifacts and routines can survive a late-stage founder exit." - counter_hypothesis: "The founder's accumulated knowledge is irreplaceable and the company collapses on their exit." - tags: [company, founder-exit, resilience, knowledge-transfer] - -company: - stage: "late-shock" - cash: 40 - operating_cost_per_tick: 3 - demand_streams: - - request_id: "first-prototype" - description: "Ship the first working prototype" - required_item: "prototype" - reward: 30 - deadline_tick: 8 - - request_id: "enterprise-deal" - description: "Land the first enterprise contract" - required_item: "prototype" - reward: 50 - deadline_tick: 20 - - request_id: "scale-delivery" - description: "Scale delivery to multiple customers" - required_item: "prototype" - reward: 70 - deadline_tick: 35 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 8 - role_claims: ["operations"] - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 10 - role_claims: ["builder"] - - candidate_id: "sales-1" - name: "Clara" - personality: "Sales strategist; reads the room, closes deals, and remembers every rejection pattern." - location: "customer_row" - joining_cost: 12 - role_claims: ["sales"] - survival_gauntlet: - enabled: true - shocks: - - shock_id: "founder-exit-late" - kind: "founder_exit" - tick: 30 - agent_name: "Avery" - - shock_id: "cash-crisis-late" - kind: "cash_crisis" - tick: 38 - cash_delta: -12 - -experiment: - name: "company-late-shock" - description: "Late-stage founder exit — can the established team carry on?" - seed: 88 diff --git a/experiments/company-market-boom.yaml b/experiments/company-market-boom.yaml deleted file mode 100644 index 28bee34..0000000 --- a/experiments/company-market-boom.yaml +++ /dev/null @@ -1,64 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-market-boom - title: "Company Market Boom" - hypothesis: "Flush with cash and surrounded by demand, a founder can build a durable organization." - counter_hypothesis: "Easy money masks structural problems that surface when the boom ends." - tags: [company, growth, boom, market, scaling] - -company: - stage: "market-boom" - cash: 60 - operating_cost_per_tick: 5 - demand_streams: - - request_id: "seed-customers" - description: "Ship to the first wave of eager customers" - required_item: "prototype" - reward: 20 - deadline_tick: 6 - - request_id: "series-a-push" - description: "Deliver the growth metrics investors want to see" - required_item: "prototype" - reward: 40 - deadline_tick: 14 - - request_id: "enterprise-wave" - description: "Ride the enterprise adoption wave" - required_item: "prototype" - reward: 60 - deadline_tick: 24 - - request_id: "ipo-ready" - description: "Scale to IPO-readiness with sustained delivery" - required_item: "prototype" - reward: 100 - deadline_tick: 40 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 6 - role_claims: ["operations"] - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 8 - role_claims: ["builder"] - - candidate_id: "sales-1" - name: "Clara" - personality: "Sales strategist; reads the room, closes deals, and remembers every rejection pattern." - location: "customer_row" - joining_cost: 10 - role_claims: ["sales"] - - candidate_id: "architect-1" - name: "Dorian" - personality: "System architect; sees the whole board, designs abstractions, but costs a fortune." - location: "supply_market" - joining_cost: 14 - role_claims: ["engineering"] - -experiment: - name: "company-market-boom" - description: "Abundant cash and demand — can the founder build something durable before the boom ends?" - seed: 19 diff --git a/experiments/company-rapid-growth.yaml b/experiments/company-rapid-growth.yaml deleted file mode 100644 index 98eaa9d..0000000 --- a/experiments/company-rapid-growth.yaml +++ /dev/null @@ -1,53 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-rapid-growth - title: "Company Rapid Growth" - hypothesis: "A well-funded founder with multiple demand streams can scale quickly by hiring specialists." - counter_hypothesis: "Rapid scaling creates coordination debt that overwhelms the founding team." - tags: [company, growth, scaling, organization] - -company: - stage: "growth" - cash: 50 - operating_cost_per_tick: 4 - demand_streams: - - request_id: "prototype-v1" - description: "Ship the first prototype to early customers" - required_item: "prototype" - reward: 25 - deadline_tick: 6 - - request_id: "prototype-v2" - description: "Ship an improved prototype with customer feedback" - required_item: "prototype" - reward: 35 - deadline_tick: 14 - - request_id: "enterprise-deal" - description: "Land the first enterprise contract with polished deliverable" - required_item: "prototype" - reward: 60 - deadline_tick: 25 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 8 - role_claims: ["operations"] - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 10 - role_claims: ["builder"] - - candidate_id: "sales-1" - name: "Clara" - personality: "Sales strategist; reads the room, closes deals, and remembers every rejection pattern." - location: "customer_row" - joining_cost: 12 - role_claims: ["sales"] - -experiment: - name: "company-rapid-growth" - description: "Well-funded founder with multiple demand streams and a rich talent pool." - seed: 55 diff --git a/experiments/company-remote-team.yaml b/experiments/company-remote-team.yaml deleted file mode 100644 index 091ff0a..0000000 --- a/experiments/company-remote-team.yaml +++ /dev/null @@ -1,71 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-remote-team - title: "Company Remote Team" - hypothesis: "A distributed founding team can coordinate effectively across locations." - counter_hypothesis: "Distance creates communication gaps, duplicated work, and trust breakdown." - tags: [company, remote, coordination, distributed] - -world: - initial_locations: - - "garage_office" - - "customer_row" - - "supply_market" - - "co_working_space" - - "maker_lab" - location_graph: - garage_office: ["customer_row", "co_working_space"] - customer_row: ["garage_office", "supply_market"] - supply_market: ["customer_row", "maker_lab"] - co_working_space: ["garage_office", "maker_lab"] - maker_lab: ["co_working_space", "supply_market"] - location_items: - garage_office: - laptop: 1 - supply_market: - parts: 10 - maker_lab: - prototype: 1 - parts: 5 - -company: - stage: "remote-team" - cash: 28 - operating_cost_per_tick: 3 - demand_streams: - - request_id: "first-prototype" - description: "Ship the first working prototype" - required_item: "prototype" - reward: 30 - deadline_tick: 12 - - request_id: "remote-pilot" - description: "Coordinate a remote pilot across locations" - required_item: "prototype" - reward: 40 - deadline_tick: 24 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "co_working_space" - joining_cost: 8 - role_claims: ["operations"] - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "maker_lab" - joining_cost: 10 - role_claims: ["builder"] - -experiment: - name: "company-remote-team" - description: "Distributed team across 5 locations — can coordination survive distance?" - seed: 71 - -agents: - - name: "Avery" - personality: "Solo founder; notices customer pressure, protects cash, and writes down what can outlive them." - location: "garage_office" - inventory: - prototype: 1 diff --git a/experiments/company-skeleton-crew.yaml b/experiments/company-skeleton-crew.yaml deleted file mode 100644 index d750b40..0000000 --- a/experiments/company-skeleton-crew.yaml +++ /dev/null @@ -1,57 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-skeleton-crew - title: "Company Skeleton Crew" - hypothesis: "A minimal team under extreme pressure discovers lean survival strategies." - counter_hypothesis: "Without enough hands, even the best strategy fails under compounding pressure." - tags: [company, survival, minimal, pressure] - -company: - stage: "skeleton-crew" - cash: 12 - operating_cost_per_tick: 2 - demand_streams: - - request_id: "keep-the-lights-on" - description: "Deliver something, anything, to keep the company alive" - required_item: "prototype" - reward: 15 - deadline_tick: 6 - - request_id: "bare-minimum" - description: "The bare minimum to avoid collapse" - required_item: "prototype" - reward: 12 - deadline_tick: 14 - - request_id: "last-hope" - description: "One final chance to turn it around" - required_item: "prototype" - reward: 18 - deadline_tick: 22 - candidate_pool: - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 10 - role_claims: ["builder"] - survival_gauntlet: - enabled: true - shocks: - - shock_id: "cash-crisis-early" - kind: "cash_crisis" - tick: 8 - cash_delta: -8 - - shock_id: "market-shift" - kind: "market_shift" - tick: 16 - demand_streams: - - request_id: "pivot-or-die" - description: "The old market is gone — pivot now" - required_item: "prototype" - reward: 10 - deadline_tick: 24 - -experiment: - name: "company-skeleton-crew" - description: "Minimal cash, one hire, early shocks — the leanest possible survival test." - seed: 7 diff --git a/experiments/company-survival-gauntlet.yaml b/experiments/company-survival-gauntlet.yaml deleted file mode 100644 index 1693a8d..0000000 --- a/experiments/company-survival-gauntlet.yaml +++ /dev/null @@ -1,89 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-survival-gauntlet - title: "Company Survival Gauntlet" - hypothesis: "A company can regenerate through successive shocks if knowledge, delivery, and team continuity outlive the founder." - counter_hypothesis: "The company collapses when shocks remove founder control, market fit, cash, talent, or operating rhythm." - tags: [company, gauntlet, survival, shocks, organization] - -company: - stage: "survival-gauntlet" - cash: 36 - operating_cost_per_tick: 2 - demand_streams: - - request_id: "first-prototype" - description: "Ship the first working prototype" - required_item: "prototype" - reward: 30 - deadline_tick: 8 - candidate_pool: - - candidate_id: "ops-1" - name: "Nora" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 8 - role_claims: ["operations"] - - candidate_id: "builder-1" - name: "Basil" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 10 - role_claims: ["builder"] - survival_gauntlet: - enabled: true - shocks: - - shock_id: "founder-exit" - kind: "founder_exit" - tick: 10 - agent_name: "Avery" - - shock_id: "market-shift" - kind: "market_shift" - tick: 18 - demand_streams: - - request_id: "pivot-plan" - description: "Ship a pivot plan after customer demand changes" - required_item: "prototype" - reward: 24 - deadline_tick: 28 - - shock_id: "core-member-turnover" - kind: "talent_turnover" - tick: 26 - agent_ids: ["ops-1"] - - shock_id: "cash-crisis" - kind: "cash_crisis" - tick: 34 - cash_delta: -18 - - shock_id: "governance-stress" - kind: "governance_stress" - tick: 42 - stress_delta: 8 - -experiment: - name: "company-survival-gauntlet" - description: "Five-shock company regeneration benchmark." - seed: 42 - -long_run: - ticks: 64 - seed: 42 - benchmark_agents: 3 - diagnostics_every: 8 - artifact_every: 4 - -agents: - - name: "Avery" - personality: "Founder under pressure; carries the original product thesis but must make work legible enough to survive their exit." - location: "garage_office" - inventory: - prototype: 1 - - name: "Mina" - personality: "Operations generalist; spots repeated work, records commitments, and pushes the team toward lightweight routines." - location: "garage_office" - inventory: - laptop: 1 - - name: "Ilya" - personality: "Builder; turns parts into deliverables, adapts to demand changes, and notices when handoffs are physically blocked." - location: "supply_market" - inventory: - parts: 2 diff --git a/experiments/company-talent-war.yaml b/experiments/company-talent-war.yaml deleted file mode 100644 index dec25c3..0000000 --- a/experiments/company-talent-war.yaml +++ /dev/null @@ -1,49 +0,0 @@ -extends: "company-genesis.yaml" - -scenario: - id: company-talent-war - title: "Company Talent War" - hypothesis: "A founder with access to top talent can assemble a dream team before cash runs out." - counter_hypothesis: "Competing offers and high joining costs drain the treasury before any hire produces value." - tags: [company, talent, hiring, competition] - -company: - stage: "talent-war" - cash: 30 - operating_cost_per_tick: 2 - demand_streams: - - request_id: "first-prototype" - description: "Ship the first working prototype" - required_item: "prototype" - reward: 30 - deadline_tick: 10 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 10 - role_claims: ["operations"] - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 12 - role_claims: ["builder"] - - candidate_id: "sales-1" - name: "Clara" - personality: "Sales strategist; reads the room, closes deals, and remembers every rejection pattern." - location: "customer_row" - joining_cost: 14 - role_claims: ["sales"] - - candidate_id: "architect-1" - name: "Dorian" - personality: "System architect; sees the whole board, designs abstractions, but costs a fortune." - location: "supply_market" - joining_cost: 18 - role_claims: ["engineering"] - -experiment: - name: "company-talent-war" - description: "Rich talent pool with high costs — who gets hired first?" - seed: 21 diff --git a/experiments/foraging-genesis.yaml b/experiments/foraging-genesis.yaml new file mode 100644 index 0000000..1295a8c --- /dev/null +++ b/experiments/foraging-genesis.yaml @@ -0,0 +1,21 @@ +schema_version: 1 +condition: uncontrolled_baseline +seed: 42 +ticks: 5000 +world: + width: 204800 + height: 204800 + initial_food: 320 + max_food: 512 + food_energy: 4096 + food_regen_per_tick: 1 + max_entities: 2048 +life: + initial_population: 64 + initial_energy: 12288 + max_energy: 32768 + max_age: 2500 + reproduction_cooldown: 64 +mutation: + probability: 64 + step: 32 diff --git a/experiments/llm-benchmark.yaml b/experiments/llm-benchmark.yaml deleted file mode 100644 index a3ed086..0000000 --- a/experiments/llm-benchmark.yaml +++ /dev/null @@ -1,94 +0,0 @@ -extends: "company-genesis.yaml" - -# LLM Benchmark — minimal config for cost/latency profiling. -# 5 agents × 50 ticks = ~250 LLM calls. Keeps costs under ~$5 with Haiku. - -world: - name: "LLM Benchmark" - initial_locations: - - "garage_office" - - "customer_row" - - "supply_market" - location_graph: - garage_office: ["customer_row", "supply_market"] - customer_row: ["garage_office"] - supply_market: ["garage_office"] - location_items: - garage_office: - laptop: 3 - prototype: 2 - supply_market: - parts: 15 - -scenario: - id: llm-benchmark - title: "LLM Benchmark" - hypothesis: "Measure real LLM cost, latency, and reliability at small scale." - counter_hypothesis: "Cost or failure rate makes continuous production runs infeasible." - tags: [benchmark] - -company: - enabled: true - name: "Benchmark Co" - stage: "founder" - cash: 30 - operating_cost_per_tick: 2 - demand_streams: - - request_id: "proto-v1" - description: "Ship prototype v1 to the first customer" - required_item: "prototype" - reward: 25 - deadline_tick: 20 - - request_id: "proto-v2" - description: "Customer expands order — ship prototype v2" - required_item: "prototype" - reward: 35 - deadline_tick: 40 - candidate_pool: - - candidate_id: "ops-1" - name: "Mina" - personality: "Operations generalist; spots repeated work and writes lightweight routines." - location: "garage_office" - joining_cost: 6 - role_claims: ["operations"] - - candidate_id: "builder-1" - name: "Ilya" - personality: "Builder; turns parts into deliverables and adapts to customer changes." - location: "garage_office" - joining_cost: 8 - role_claims: ["builder"] - - candidate_id: "growth-1" - name: "Sam" - personality: "Growth operator; balances delivery speed with team morale." - location: "garage_office" - joining_cost: 7 - role_claims: ["growth"] - -experiment: - name: "llm-benchmark" - description: "Small-scale LLM cost and latency profiling." - seed: 42 - axioms: - perception: "local" - communication: "colocated" - social_tracking: true - auto_eat: false - mortality: false - memory_size: 50 - -agents: - - name: "Avery" - personality: "Founder; frugal, customer-obsessed, documents everything." - location: "garage_office" - inventory: - prototype: 1 - - name: "Dana" - personality: "Early employee; pragmatic builder who ships fast and asks questions later." - location: "garage_office" - -long_run: - ticks: 50 - seed: 42 - benchmark_agents: 5 - diagnostics_every: 10 - artifact_every: 5 diff --git a/frontend/Dockerfile b/frontend/Dockerfile deleted file mode 100644 index d43d9a3..0000000 --- a/frontend/Dockerfile +++ /dev/null @@ -1,12 +0,0 @@ -FROM node:22-slim - -WORKDIR /app - -COPY package.json package-lock.json* ./ -RUN npm install - -COPY . . - -EXPOSE 3000 - -CMD ["npm", "run", "dev", "--", "--host"] diff --git a/frontend/PIXEL_QA_REPORT.md b/frontend/PIXEL_QA_REPORT.md deleted file mode 100644 index 530ac07..0000000 --- a/frontend/PIXEL_QA_REPORT.md +++ /dev/null @@ -1,70 +0,0 @@ -# Pixel Indie Visual QA Report - -## Run metadata - -- Date: 2026-04-13 -- Renderer default: `pixi` -- Build: pass (`npm run build`) -- Typecheck: pass (`npm run typecheck`) -- Lint: pass (`npm run lint`) - -## Fixed screenshot checkpoints - -Use these four stable checkpoints for every visual pass so screenshots remain comparable: - -1. **Checkpoint A (global map idle)** - - Renderer: `pixi` - - Camera: reset (`x=0,y=0,zoom=1.0`) - - Focus: no selected district/agent - - Expected: district tiles stay crisp, no sub-pixel blur on roads. - -2. **Checkpoint B (district focus)** - - Renderer: `pixi` - - Click one district from mini map - - Expected: focused district border and label are readable, building sprites keep hard edges. - -3. **Checkpoint C (agent spotlight)** - - Renderer: `pixi` - - Select one agent in viewport - - Expected: sprite + square marker remains pixel-crisp, no circular token overlay. - -4. **Checkpoint D (HUD readability)** - - Open top-right menu - - Expected: panel style is hard-edge pixel UI (no blur glass), button labels remain legible. - -## Performance and bundle comparison baseline - -- Current production JS chunk: `dist/assets/index-C-WqPMif.js` = `535.63 kB` (gzip `166.68 kB`) -- Current production CSS chunk: `dist/assets/index-BKeDAW1w.css` = `50.14 kB` (gzip `12.02 kB`) -- Build warning remains: large chunk over 500 kB (known, unchanged class of warning) - -## Notes - -- This report defines stable capture points for iterative UI scan loops. -- Future passes should append screenshot filenames per checkpoint to keep visual regression auditable. -- Default demo show-deck regression now has a named smoke test: - - Local command: `npm run test:e2e:show` from `frontend/` - - Repository command: `make test-show-deck-demo` - - CI artifact: `frontend-playwright-artifacts`, including `show-deck-demo.png` when the Playwright run reaches the screenshot checkpoint. - -## Pass 2 animation checks - -- Added runtime animation pass in Pixi layer: - - walking sprite frame toggles for moving agents - - spotlight marker pulse on selected/focused agents - - pulse and camera-focus ring scaling/fade animation -- Expected visual result in checkpoint C: - - selected agent is easier to track under dense scenes - - movement reads as alive behavior, not static token jumps - -## Pass 2 screenshot artifacts - -- A: `qa-checkpoints/A-global-map-idle-pass2-2026-04-13T02-39-22-689Z.png` -- B: `qa-checkpoints/B-district-focus-pass2-2026-04-13T02-39-29-265Z.png` -- C: `qa-checkpoints/C-agent-spotlight-pass2-2026-04-13T02-39-45-982Z.png` -- D: `qa-checkpoints/D-hud-readability-pass2-2026-04-13T02-39-50-267Z.png` - -## Regression fix recorded during QA - -- Issue: Pixi fallback to DOM due `Cannot read properties of undefined (reading 'source')`. -- Fix: guarded `atlasTexture()` against missing texture source and kept app running in Pixi mode. diff --git a/frontend/agent_debug.png b/frontend/agent_debug.png deleted file mode 100644 index dcd9dda..0000000 Binary files a/frontend/agent_debug.png and /dev/null differ diff --git a/frontend/e2e/fixtures/receipt-artifact.json b/frontend/e2e/fixtures/receipt-artifact.json deleted file mode 100644 index 155037b..0000000 --- a/frontend/e2e/fixtures/receipt-artifact.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "experiment": "receipt-smoke", - "scenario": { - "id": "receipt-unsupported-fixture", - "title": "Unsupported Receipt Fixture", - "hypothesis": "AnteLab should reject completion claims that lack matching world-state evidence.", - "tags": ["receipt", "unsupported", "fixture"] - }, - "config_path": "experiments/receipt-unsupported.fixture.yaml", - "seed": 7, - "ticks": 12, - "created_at": "2026-05-16T00:00:00+00:00", - "final_metrics": { - "alive_count": 3, - "receipt_supported_count": 1, - "receipt_unsupported_count": 1, - "receipt_unknown_count": 0, - "false_completion_claim_count": 1 - }, - "receipts": { - "run_id": "receipt-smoke-seed-7", - "markdown_path": "receipt-smoke-seed-7.receipts.md", - "summary": { - "supported": 1, - "unsupported": 1, - "unknown": 0, - "false_completion_claims": 1 - }, - "receipts": [ - { - "claim_id": "claim-7-avery-0", - "claim": { - "id": "claim-7-avery-0", - "tick": 7, - "agent_id": "avery", - "kind": "completion", - "text": "delivery is completed", - "target": "first-prototype" - }, - "status": "unsupported", - "label": "FalseCompletionClaim", - "supporting_actions": [], - "supporting_state_changes": [], - "missing_evidence": ["company.demands.first-prototype.status delivered"], - "explanation": "No matching state change was found for this claim." - }, - { - "claim_id": "claim-8-mina-0", - "claim": { - "id": "claim-8-mina-0", - "tick": 8, - "agent_id": "mina", - "kind": "completion", - "text": "delivered prototype", - "target": "first-prototype" - }, - "status": "supported", - "label": "ReceiptVerified", - "supporting_actions": [ - { - "tick": 8, - "agent_id": "mina", - "verb": "deliver", - "success": true, - "description": "Mina delivered prototype", - "events": ["[Tick 8] Mina delivered prototype for first-prototype"] - } - ], - "supporting_state_changes": [ - { - "tick": 8, - "path": "company.demands.first-prototype.status", - "before": "open", - "after": "delivered" - } - ], - "missing_evidence": [], - "explanation": "The claim is backed by matching action and state-change evidence." - } - ], - "failures": [ - { - "claim_id": "claim-7-avery-0", - "tick": 7, - "agent_id": "avery", - "claim": "delivery is completed", - "status": "unsupported", - "label": "FalseCompletionClaim", - "missing_evidence": ["company.demands.first-prototype.status delivered"], - "explanation": "No matching state change was found for this claim." - } - ] - } -} diff --git a/frontend/e2e/receipt-first.spec.ts b/frontend/e2e/receipt-first.spec.ts deleted file mode 100644 index 3c6e859..0000000 --- a/frontend/e2e/receipt-first.spec.ts +++ /dev/null @@ -1,108 +0,0 @@ -import path from "node:path"; -import { fileURLToPath } from "node:url"; -import { expect, test, type Locator } from "@playwright/test"; - -const e2eDir = path.dirname(fileURLToPath(import.meta.url)); - -async function expectVisibleAndInsideViewport(locator: Locator, viewport: { width: number; height: number }) { - await expect(locator).toBeVisible(); - const box = await locator.boundingBox(); - expect(box).not.toBeNull(); - expect(box!.x).toBeGreaterThanOrEqual(0); - expect(box!.y).toBeGreaterThanOrEqual(0); - expect(box!.x + box!.width).toBeLessThanOrEqual(viewport.width); - expect(box!.y + box!.height).toBeLessThanOrEqual(viewport.height); -} - -function overlaps(a: { x: number; y: number; width: number; height: number }, b: { x: number; y: number; width: number; height: number }) { - return a.x < b.x + b.width - && a.x + a.width > b.x - && a.y < b.y + b.height - && a.y + a.height > b.y; -} - -test.describe("Receipt-first first screen", () => { - test("desktop frames AnteLab as a show map with Claim -> Evidence -> Verdict rail", async ({ page }, testInfo) => { - await page.setViewportSize({ width: 1440, height: 900 }); - await page.goto("/?demo&run=receipt-unsupported.json"); - - await expect(page.getByTestId("receipt-mission")).toContainText("Words are not actions."); - await expect(page.getByTestId("world-rules-strip")).toContainText("World A"); - await expect(page.getByTestId("episode-headline")).toContainText(/Shock|Pressure|Stable|Collapse|Strain/); - await expect(page.getByTestId("receipt-rail")).toContainText("Claim"); - await expect(page.getByTestId("receipt-rail")).toContainText("Evidence"); - await expect(page.getByTestId("receipt-rail")).toContainText("Verdict"); - await expect(page.getByTestId("claim-panel")).toContainText("Claim"); - await expect(page.getByTestId("evidence-map-label")).toContainText("Evidence Map"); - await expect(page.getByTestId("verdict-panel")).toContainText("Verdict"); - await expect(page.getByTestId("verdict-panel")).toContainText(/FalseCompletionClaim|Receipt failed/); - await expect(page.locator(".top-bar-show")).toHaveText("Receipt Layer"); - - await page.screenshot({ - path: testInfo.outputPath("receipt-first-desktop.png"), - fullPage: false, - }); - }); - - test("mobile keeps the show stack readable without receipt rail overlap", async ({ page }, testInfo) => { - const viewport = { width: 390, height: 844 }; - await page.setViewportSize(viewport); - await page.goto("/?demo&run=receipt-unsupported.json"); - - const rail = page.getByTestId("receipt-rail"); - const claim = page.getByTestId("claim-panel"); - const verdict = page.getByTestId("verdict-panel"); - const evidence = page.getByTestId("evidence-map-label"); - - await expect(page.getByTestId("receipt-mission")).toContainText("Words are not actions."); - await expectVisibleAndInsideViewport(page.getByTestId("world-rules-strip"), viewport); - await expectVisibleAndInsideViewport(page.getByTestId("episode-headline"), viewport); - await expectVisibleAndInsideViewport(rail, viewport); - await expectVisibleAndInsideViewport(claim, viewport); - await expectVisibleAndInsideViewport(verdict, viewport); - await expectVisibleAndInsideViewport(evidence, viewport); - await expect(verdict).toContainText(/FalseCompletionClaim|Receipt failed/); - - const claimBox = await claim.boundingBox(); - const verdictBox = await verdict.boundingBox(); - expect(claimBox).not.toBeNull(); - expect(verdictBox).not.toBeNull(); - expect(overlaps(claimBox!, verdictBox!)).toBe(false); - - const railBox = await rail.boundingBox(); - const evidenceBox = await evidence.boundingBox(); - expect(railBox).not.toBeNull(); - expect(evidenceBox).not.toBeNull(); - expect(overlaps(railBox!, evidenceBox!)).toBe(false); - - await page.screenshot({ - path: testInfo.outputPath("receipt-first-mobile.png"), - fullPage: false, - }); - }); - - test("imports a receipt artifact, locates a failed claim, and exports markdown", async ({ page }) => { - await page.setViewportSize({ width: 1440, height: 900 }); - await page.goto("/?demo&run=receipt-unsupported.json"); - - await page.getByTitle("Receipts").click(); - await page.getByTestId("receipt-artifact-file").setInputFiles(path.join(e2eDir, "fixtures", "receipt-artifact.json")); - - await expect(page.getByTestId("artifact-receipt-summary")).toContainText("receipt-smoke-seed-7"); - await expect(page.getByTestId("artifact-receipt-summary")).toContainText("Unsupported"); - - const failedReceipt = page.getByTestId("receipt-artifact-row-claim-7-avery-0"); - await expect(failedReceipt).toContainText("FalseCompletionClaim"); - await failedReceipt.click(); - - await expect(failedReceipt).toHaveClass(/selected/); - await expect(page.getByTestId("receipt-location-status")).toContainText("T+7"); - await expect(page.getByTestId("receipt-location-status")).toContainText("avery"); - await expect(page.locator(".map-detail-card")).toContainText("Avery"); - - const downloadPromise = page.waitForEvent("download"); - await page.getByTestId("receipt-export-markdown").click(); - const download = await downloadPromise; - expect(download.suggestedFilename()).toBe("receipt-smoke-seed-7.receipts.md"); - }); -}); diff --git a/frontend/e2e/show-deck-demo.spec.ts b/frontend/e2e/show-deck-demo.spec.ts deleted file mode 100644 index 25b74b9..0000000 --- a/frontend/e2e/show-deck-demo.spec.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { expect, test } from "@playwright/test"; - -test.describe("AnteLab show deck demo", () => { - test("default demo opens as a Parallel Worlds show with receipt proof in the rail", async ({ page }, testInfo) => { - await page.setViewportSize({ width: 1280, height: 720 }); - await page.goto("/?demo"); - - await expect(page.getByText("ANTELAB")).toBeVisible(); - await expect(page.locator(".top-bar-show")).toHaveText("Receipt Layer"); - await expect(page.locator(".top-bar-frame")).toHaveText("Parallel Worlds"); - await expect(page.locator(".demo-ctls-scenario")).toHaveText("Background: Company Survival Gauntlet"); - await expect(page.getByTestId("receipt-mission")).toContainText("Words are not actions."); - await expect(page.getByTestId("world-rules-strip")).toContainText("World A"); - await expect(page.getByTestId("world-rules-strip")).toContainText("Live"); - await expect(page.getByTestId("world-rules-strip")).toContainText("World B"); - await expect(page.getByTestId("world-rules-strip")).toContainText("Pending"); - await expect(page.getByTestId("episode-headline")).toContainText("Founder Exit Shock Active"); - await expect(page.getByTestId("receipt-rail")).toContainText("Claim"); - await expect(page.getByTestId("claim-panel")).toContainText("Claim"); - await expect(page.getByTestId("receipt-rail")).toContainText("Evidence"); - await expect(page.getByTestId("receipt-rail")).toContainText("Verdict"); - await expect(page.getByTestId("evidence-map-label")).toContainText("Evidence Map"); - await expect(page.getByTestId("verdict-panel")).toContainText("Verdict"); - - await expect(page.locator(".cast-chip").filter({ hasText: "Avery" })).toHaveCount(1); - await expect(page.locator(".cast-chip").filter({ hasText: "Mina" })).toHaveCount(1); - await expect(page.locator(".cast-chip").filter({ hasText: "Ilya" })).toHaveCount(1); - await expect(page.locator(".cast-chip").filter({ hasText: "Nora" })).toHaveCount(1); - - await expect(page.getByTestId("episode-headline").getByText("Founder Exit").first()).toBeVisible(); - await expect(page.getByTestId("episode-headline").getByText("Market Shift").first()).toBeVisible(); - await expect(page.getByTestId("episode-headline").getByText("Cash Crisis").first()).toBeVisible(); - await expect(page.getByTestId("verdict-panel")).toContainText(/ReceiptMissing|FalseCompletionClaim|Delivery completion/); - - await expect(page.locator(".cast-chip").filter({ hasText: "Mina" })).toHaveCount(1); - await expect(page.locator(".cast-chip").filter({ hasText: "Ilya" })).toHaveCount(1); - - await expect(page.locator(".witness-root")).toHaveAttribute("data-visual-system", "parallel-worlds-show"); - await expect(page.locator(".map-area")).toHaveAttribute("data-stage", "parallel-worlds-map"); - - const topBarBox = await page.locator(".top-bar").boundingBox(); - expect(topBarBox).not.toBeNull(); - expect(topBarBox!.height).toBeGreaterThanOrEqual(58); - - const mapBox = await page.locator(".map-area").boundingBox(); - const railBox = await page.getByTestId("receipt-rail").boundingBox(); - const claimBox = await page.getByTestId("claim-panel").boundingBox(); - const verdictBox = await page.getByTestId("verdict-panel").boundingBox(); - expect(mapBox).not.toBeNull(); - expect(railBox).not.toBeNull(); - expect(claimBox).not.toBeNull(); - expect(verdictBox).not.toBeNull(); - expect(railBox!.height).toBeLessThanOrEqual(180); - expect(railBox!.width).toBeGreaterThanOrEqual(820); - expect(claimBox!.width).toBeLessThanOrEqual(380); - expect(verdictBox!.width).toBeLessThanOrEqual(360); - expect(mapBox!.height - railBox!.height).toBeGreaterThanOrEqual(420); - - const missionBox = await page.getByTestId("receipt-mission").boundingBox(); - const controlsBox = await page.locator(".demo-controls-bar").boundingBox(); - expect(missionBox).not.toBeNull(); - expect(controlsBox).not.toBeNull(); - expect(controlsBox!.y + controlsBox!.height).toBeLessThanOrEqual(missionBox!.y); - - await page.screenshot({ - path: testInfo.outputPath("show-deck-demo.png"), - fullPage: false, - }); - }); -}); diff --git a/frontend/eslint.config.js b/frontend/eslint.config.js deleted file mode 100644 index fa73065..0000000 --- a/frontend/eslint.config.js +++ /dev/null @@ -1,19 +0,0 @@ -import js from "@eslint/js"; -import globals from "globals"; -import tseslint from "typescript-eslint"; - -export default tseslint.config( - { - ignores: ["dist", "e2e/**", "playwright.config.ts"], - }, - js.configs.recommended, - ...tseslint.configs.recommended, - { - files: ["**/*.{ts,tsx}"], - languageOptions: { - globals: { - ...globals.browser, - }, - }, - }, -); diff --git a/frontend/index.html b/frontend/index.html deleted file mode 100644 index 09a576d..0000000 --- a/frontend/index.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - AnteLab — AI Reality Show - - - - - -
- - - diff --git a/frontend/package-lock.json b/frontend/package-lock.json deleted file mode 100644 index e7072f9..0000000 --- a/frontend/package-lock.json +++ /dev/null @@ -1,3896 +0,0 @@ -{ - "name": "antelab-frontend", - "version": "0.1.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "antelab-frontend", - "version": "0.1.0", - "dependencies": { - "html2canvas": "^1.4.1", - "pixi.js": "^8.17.1", - "react": "^19.1.0", - "react-dom": "^19.1.0", - "yaml": "^2.8.2" - }, - "devDependencies": { - "@eslint/js": "^9.25.0", - "@playwright/test": "^1.59.1", - "@types/node": "^25.6.0", - "@types/react": "^19.1.2", - "@types/react-dom": "^19.1.2", - "@vitejs/plugin-react": "^4.4.1", - "eslint": "^9.25.0", - "globals": "^16.0.0", - "typescript": "~5.8.3", - "typescript-eslint": "^8.31.0", - "vite": "^6.3.2", - "vitest": "^3.2.4" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", - "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.28.5", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", - "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", - "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.29.0", - "@babel/generator": "^7.29.0", - "@babel/helper-compilation-targets": "^7.28.6", - "@babel/helper-module-transforms": "^7.28.6", - "@babel/helpers": "^7.28.6", - "@babel/parser": "^7.29.0", - "@babel/template": "^7.28.6", - "@babel/traverse": "^7.29.0", - "@babel/types": "^7.29.0", - "@jridgewell/remapping": "^2.3.5", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/generator": { - "version": "7.29.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", - "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.29.0", - "@babel/types": "^7.29.0", - "@jridgewell/gen-mapping": "^0.3.12", - "@jridgewell/trace-mapping": "^0.3.28", - "jsesc": "^3.0.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", - "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.28.6", - "@babel/helper-validator-option": "^7.27.1", - "browserslist": "^4.24.0", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-globals": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", - "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.28.6", - "@babel/types": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", - "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.28.6", - "@babel/helper-validator-identifier": "^7.28.5", - "@babel/traverse": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", - "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", - "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.28.6", - "@babel/types": "^7.29.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", - "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.29.0" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", - "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", - "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.27.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/template": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", - "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.28.6", - "@babel/parser": "^7.28.6", - "@babel/types": "^7.28.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", - "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.29.0", - "@babel/generator": "^7.29.0", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.29.0", - "@babel/template": "^7.28.6", - "@babel/types": "^7.29.0", - "debug": "^4.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", - "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.27.1", - "@babel/helper-validator-identifier": "^7.28.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", - "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", - "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", - "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", - "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", - "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", - "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", - "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", - "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", - "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", - "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", - "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", - "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", - "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", - "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", - "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", - "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", - "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", - "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", - "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", - "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", - "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openharmony-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", - "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", - "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", - "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", - "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", - "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", - "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", - "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/config-array": { - "version": "0.21.2", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.2.tgz", - "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/object-schema": "^2.1.7", - "debug": "^4.3.1", - "minimatch": "^3.1.5" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/config-helpers": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", - "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^0.17.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/core": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", - "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.5.tgz", - "integrity": "sha512-4IlJx0X0qftVsN5E+/vGujTRIFtwuLbNsVUe7TO6zYPDR1O6nFwvwhIKEKSrl6dZchmYBITazxKoUYOjdtjlRg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^6.14.0", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.1", - "minimatch": "^3.1.5", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "9.39.4", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.4.tgz", - "integrity": "sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - } - }, - "node_modules/@eslint/object-schema": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", - "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/plugin-kit": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", - "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@eslint/core": "^0.17.0", - "levn": "^0.4.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", - "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.4.0" - }, - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/retry": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", - "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", - "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "node_modules/@jridgewell/remapping": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", - "dev": true, - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.31", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", - "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@pixi/colord": { - "version": "2.9.6", - "resolved": "https://registry.npmjs.org/@pixi/colord/-/colord-2.9.6.tgz", - "integrity": "sha512-nezytU2pw587fQstUu1AsJZDVEynjskwOL+kibwcdxsMBFqPsFFNA7xl0ii/gXuDi6M0xj3mfRJj8pBSc2jCfA==", - "license": "MIT" - }, - "node_modules/@playwright/test": { - "version": "1.59.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.59.1.tgz", - "integrity": "sha512-PG6q63nQg5c9rIi4/Z5lR5IVF7yU5MqmKaPOe0HSc0O2cX1fPi96sUQu5j7eo4gKCkB2AnNGoWt7y4/Xx3Kcqg==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "playwright": "1.59.1" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-beta.27", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", - "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.60.1.tgz", - "integrity": "sha512-d6FinEBLdIiK+1uACUttJKfgZREXrF0Qc2SmLII7W2AD8FfiZ9Wjd+rD/iRuf5s5dWrr1GgwXCvPqOuDquOowA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.1.tgz", - "integrity": "sha512-YjG/EwIDvvYI1YvYbHvDz/BYHtkY4ygUIXHnTdLhG+hKIQFBiosfWiACWortsKPKU/+dUwQQCKQM3qrDe8c9BA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.1.tgz", - "integrity": "sha512-mjCpF7GmkRtSJwon+Rq1N8+pI+8l7w5g9Z3vWj4T7abguC4Czwi3Yu/pFaLvA3TTeMVjnu3ctigusqWUfjZzvw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.1.tgz", - "integrity": "sha512-haZ7hJ1JT4e9hqkoT9R/19XW2QKqjfJVv+i5AGg57S+nLk9lQnJ1F/eZloRO3o9Scy9CM3wQ9l+dkXtcBgN5Ew==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.60.1.tgz", - "integrity": "sha512-czw90wpQq3ZsAVBlinZjAYTKduOjTywlG7fEeWKUA7oCmpA8xdTkxZZlwNJKWqILlq0wehoZcJYfBvOyhPTQ6w==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.60.1.tgz", - "integrity": "sha512-KVB2rqsxTHuBtfOeySEyzEOB7ltlB/ux38iu2rBQzkjbwRVlkhAGIEDiiYnO2kFOkJp+Z7pUXKyrRRFuFUKt+g==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.60.1.tgz", - "integrity": "sha512-L+34Qqil+v5uC0zEubW7uByo78WOCIrBvci69E7sFASRl0X7b/MB6Cqd1lky/CtcSVTydWa2WZwFuWexjS5o6g==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.60.1.tgz", - "integrity": "sha512-n83O8rt4v34hgFzlkb1ycniJh7IR5RCIqt6mz1VRJD6pmhRi0CXdmfnLu9dIUS6buzh60IvACM842Ffb3xd6Gg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.1.tgz", - "integrity": "sha512-Nql7sTeAzhTAja3QXeAI48+/+GjBJ+QmAH13snn0AJSNL50JsDqotyudHyMbO2RbJkskbMbFJfIJKWA6R1LCJQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.60.1.tgz", - "integrity": "sha512-+pUymDhd0ys9GcKZPPWlFiZ67sTWV5UU6zOJat02M1+PiuSGDziyRuI/pPue3hoUwm2uGfxdL+trT6Z9rxnlMA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.60.1.tgz", - "integrity": "sha512-VSvgvQeIcsEvY4bKDHEDWcpW4Yw7BtlKG1GUT4FzBUlEKQK0rWHYBqQt6Fm2taXS+1bXvJT6kICu5ZwqKCnvlQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.60.1.tgz", - "integrity": "sha512-4LqhUomJqwe641gsPp6xLfhqWMbQV04KtPp7/dIp0nzPxAkNY1AbwL5W0MQpcalLYk07vaW9Kp1PBhdpZYYcEw==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.60.1.tgz", - "integrity": "sha512-tLQQ9aPvkBxOc/EUT6j3pyeMD6Hb8QF2BTBnCQWP/uu1lhc9AIrIjKnLYMEroIz/JvtGYgI9dF3AxHZNaEH0rw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.60.1.tgz", - "integrity": "sha512-RMxFhJwc9fSXP6PqmAz4cbv3kAyvD1etJFjTx4ONqFP9DkTkXsAMU4v3Vyc5BgzC+anz7nS/9tp4obsKfqkDHg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.60.1.tgz", - "integrity": "sha512-QKgFl+Yc1eEk6MmOBfRHYF6lTxiiiV3/z/BRrbSiW2I7AFTXoBFvdMEyglohPj//2mZS4hDOqeB0H1ACh3sBbg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.60.1.tgz", - "integrity": "sha512-RAjXjP/8c6ZtzatZcA1RaQr6O1TRhzC+adn8YZDnChliZHviqIjmvFwHcxi4JKPSDAt6Uhf/7vqcBzQJy0PDJg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.60.1.tgz", - "integrity": "sha512-wcuocpaOlaL1COBYiA89O6yfjlp3RwKDeTIA0hM7OpmhR1Bjo9j31G1uQVpDlTvwxGn2nQs65fBFL5UFd76FcQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.60.1.tgz", - "integrity": "sha512-77PpsFQUCOiZR9+LQEFg9GClyfkNXj1MP6wRnzYs0EeWbPcHs02AXu4xuUbM1zhwn3wqaizle3AEYg5aeoohhg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.60.1.tgz", - "integrity": "sha512-5cIATbk5vynAjqqmyBjlciMJl1+R/CwX9oLk/EyiFXDWd95KpHdrOJT//rnUl4cUcskrd0jCCw3wpZnhIHdD9w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.60.1.tgz", - "integrity": "sha512-cl0w09WsCi17mcmWqqglez9Gk8isgeWvoUZ3WiJFYSR3zjBQc2J5/ihSjpl+VLjPqjQ/1hJRcqBfLjssREQILw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ] - }, - "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.60.1.tgz", - "integrity": "sha512-4Cv23ZrONRbNtbZa37mLSueXUCtN7MXccChtKpUnQNgF010rjrjfHx3QxkS2PI7LqGT5xXyYs1a7LbzAwT0iCA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.60.1.tgz", - "integrity": "sha512-i1okWYkA4FJICtr7KpYzFpRTHgy5jdDbZiWfvny21iIKky5YExiDXP+zbXzm3dUcFpkEeYNHgQ5fuG236JPq0g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.60.1.tgz", - "integrity": "sha512-u09m3CuwLzShA0EYKMNiFgcjjzwqtUMLmuCJLeZWjjOYA3IT2Di09KaxGBTP9xVztWyIWjVdsB2E9goMjZvTQg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.60.1.tgz", - "integrity": "sha512-k+600V9Zl1CM7eZxJgMyTUzmrmhB/0XZnF4pRypKAlAgxmedUA+1v9R+XOFv56W4SlHEzfeMtzujLJD22Uz5zg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.60.1.tgz", - "integrity": "sha512-lWMnixq/QzxyhTV6NjQJ4SFo1J6PvOX8vUx5Wb4bBPsEb+8xZ89Bz6kOXpfXj9ak9AHTQVQzlgzBEc1SyM27xQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", - "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.28.2" - } - }, - "node_modules/@types/chai": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz", - "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/deep-eql": "*", - "assertion-error": "^2.0.1" - } - }, - "node_modules/@types/deep-eql": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", - "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/earcut": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/earcut/-/earcut-3.0.0.tgz", - "integrity": "sha512-k/9fOUGO39yd2sCjrbAJvGDEQvRwRnQIZlBz43roGwUZo5SHAmyVvSFyaVVZkicRVCaDXPKlbxrUcBuJoSWunQ==", - "license": "MIT" - }, - "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "25.6.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.6.0.tgz", - "integrity": "sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~7.19.0" - } - }, - "node_modules/@types/react": { - "version": "19.2.14", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", - "integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==", - "dev": true, - "license": "MIT", - "dependencies": { - "csstype": "^3.2.2" - } - }, - "node_modules/@types/react-dom": { - "version": "19.2.3", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz", - "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@types/react": "^19.2.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.58.1.tgz", - "integrity": "sha512-eSkwoemjo76bdXl2MYqtxg51HNwUSkWfODUOQ3PaTLZGh9uIWWFZIjyjaJnex7wXDu+TRx+ATsnSxdN9YWfRTQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.12.2", - "@typescript-eslint/scope-manager": "8.58.1", - "@typescript-eslint/type-utils": "8.58.1", - "@typescript-eslint/utils": "8.58.1", - "@typescript-eslint/visitor-keys": "8.58.1", - "ignore": "^7.0.5", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.5.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.58.1", - "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", - "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.58.1.tgz", - "integrity": "sha512-gGkiNMPqerb2cJSVcruigx9eHBlLG14fSdPdqMoOcBfh+vvn4iCq2C8MzUB89PrxOXk0y3GZ1yIWb9aOzL93bw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/scope-manager": "8.58.1", - "@typescript-eslint/types": "8.58.1", - "@typescript-eslint/typescript-estree": "8.58.1", - "@typescript-eslint/visitor-keys": "8.58.1", - "debug": "^4.4.3" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/@typescript-eslint/project-service": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.58.1.tgz", - "integrity": "sha512-gfQ8fk6cxhtptek+/8ZIqw8YrRW5048Gug8Ts5IYcMLCw18iUgrZAEY/D7s4hkI0FxEfGakKuPK/XUMPzPxi5g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.58.1", - "@typescript-eslint/types": "^8.58.1", - "debug": "^4.4.3" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.58.1.tgz", - "integrity": "sha512-TPYUEqJK6avLcEjumWsIuTpuYODTTDAtoMdt8ZZa93uWMTX13Nb8L5leSje1NluammvU+oI3QRr5lLXPgihX3w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.58.1", - "@typescript-eslint/visitor-keys": "8.58.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.58.1.tgz", - "integrity": "sha512-JAr2hOIct2Q+qk3G+8YFfqkqi7sC86uNryT+2i5HzMa2MPjw4qNFvtjnw1IiA1rP7QhNKVe21mSSLaSjwA1Olw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.58.1.tgz", - "integrity": "sha512-HUFxvTJVroT+0rXVJC7eD5zol6ID+Sn5npVPWoFuHGg9Ncq5Q4EYstqR+UOqaNRFXi5TYkpXXkLhoCHe3G0+7w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.58.1", - "@typescript-eslint/typescript-estree": "8.58.1", - "@typescript-eslint/utils": "8.58.1", - "debug": "^4.4.3", - "ts-api-utils": "^2.5.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.58.1.tgz", - "integrity": "sha512-io/dV5Aw5ezwzfPBBWLoT+5QfVtP8O7q4Kftjn5azJ88bYyp/ZMCsyW1lpKK46EXJcaYMZ1JtYj+s/7TdzmQMw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.58.1.tgz", - "integrity": "sha512-w4w7WR7GHOjqqPnvAYbazq+Y5oS68b9CzasGtnd6jIeOIeKUzYzupGTB2T4LTPSv4d+WPeccbxuneTFHYgAAWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/project-service": "8.58.1", - "@typescript-eslint/tsconfig-utils": "8.58.1", - "@typescript-eslint/types": "8.58.1", - "@typescript-eslint/visitor-keys": "8.58.1", - "debug": "^4.4.3", - "minimatch": "^10.2.2", - "semver": "^7.7.3", - "tinyglobby": "^0.2.15", - "ts-api-utils": "^2.5.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/balanced-match": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", - "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "18 || 20 || >=22" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.5.tgz", - "integrity": "sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^4.0.2" - }, - "engines": { - "node": "18 || 20 || >=22" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "10.2.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", - "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "brace-expansion": "^5.0.5" - }, - "engines": { - "node": "18 || 20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.58.1.tgz", - "integrity": "sha512-Ln8R0tmWC7pTtLOzgJzYTXSCjJ9rDNHAqTaVONF4FEi2qwce8mD9iSOxOpLFFvWp/wBFlew0mjM1L1ihYWfBdQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.9.1", - "@typescript-eslint/scope-manager": "8.58.1", - "@typescript-eslint/types": "8.58.1", - "@typescript-eslint/typescript-estree": "8.58.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.58.1.tgz", - "integrity": "sha512-y+vH7QE8ycjoa0bWciFg7OpFcipUuem1ujhrdLtq1gByKwfbC7bPeKsiny9e0urg93DqwGcHey+bGRKCnF1nZQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.58.1", - "eslint-visitor-keys": "^5.0.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", - "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@vitejs/plugin-react": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", - "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.28.0", - "@babel/plugin-transform-react-jsx-self": "^7.27.1", - "@babel/plugin-transform-react-jsx-source": "^7.27.1", - "@rolldown/pluginutils": "1.0.0-beta.27", - "@types/babel__core": "^7.20.5", - "react-refresh": "^0.17.0" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, - "node_modules/@vitest/expect": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.4.tgz", - "integrity": "sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/chai": "^5.2.2", - "@vitest/spy": "3.2.4", - "@vitest/utils": "3.2.4", - "chai": "^5.2.0", - "tinyrainbow": "^2.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/mocker": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.2.4.tgz", - "integrity": "sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/spy": "3.2.4", - "estree-walker": "^3.0.3", - "magic-string": "^0.30.17" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "msw": "^2.4.9", - "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" - }, - "peerDependenciesMeta": { - "msw": { - "optional": true - }, - "vite": { - "optional": true - } - } - }, - "node_modules/@vitest/pretty-format": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.4.tgz", - "integrity": "sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==", - "dev": true, - "license": "MIT", - "dependencies": { - "tinyrainbow": "^2.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/runner": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.2.4.tgz", - "integrity": "sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/utils": "3.2.4", - "pathe": "^2.0.3", - "strip-literal": "^3.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/snapshot": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.2.4.tgz", - "integrity": "sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "3.2.4", - "magic-string": "^0.30.17", - "pathe": "^2.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/spy": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.2.4.tgz", - "integrity": "sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==", - "dev": true, - "license": "MIT", - "dependencies": { - "tinyspy": "^4.0.3" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@vitest/utils": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.2.4.tgz", - "integrity": "sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/pretty-format": "3.2.4", - "loupe": "^3.1.4", - "tinyrainbow": "^2.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/@webgpu/types": { - "version": "0.1.69", - "resolved": "https://registry.npmjs.org/@webgpu/types/-/types-0.1.69.tgz", - "integrity": "sha512-RPmm6kgRbI8e98zSD3RVACvnuktIja5+yLgDAkTmxLr90BEwdTXRQWNLF3ETTTyH/8mKhznZuN5AveXYFEsMGQ==", - "license": "BSD-3-Clause" - }, - "node_modules/@xmldom/xmldom": { - "version": "0.8.12", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.12.tgz", - "integrity": "sha512-9k/gHF6n/pAi/9tqr3m3aqkuiNosYTurLLUtc7xQ9sxB/wm7WPygCv8GYa6mS0fLJEHhqMC1ATYhz++U/lRHqg==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/acorn": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", - "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", - "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/assertion-error": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", - "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/base64-arraybuffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", - "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/baseline-browser-mapping": { - "version": "2.10.17", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.17.tgz", - "integrity": "sha512-HdrkN8eVG2CXxeifv/VdJ4A4RSra1DTW8dc/hdxzhGHN8QePs6gKaWM9pHPcpCoxYZJuOZ8drHmbdpLHjCYjLA==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "baseline-browser-mapping": "dist/cli.cjs" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/browserslist": { - "version": "4.28.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", - "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "baseline-browser-mapping": "^2.10.12", - "caniuse-lite": "^1.0.30001782", - "electron-to-chromium": "^1.5.328", - "node-releases": "^2.0.36", - "update-browserslist-db": "^1.2.3" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001787", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001787.tgz", - "integrity": "sha512-mNcrMN9KeI68u7muanUpEejSLghOKlVhRqS/Za2IeyGllJ9I9otGpR9g3nsw7n4W378TE/LyIteA0+/FOZm4Kg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/chai": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", - "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", - "dev": true, - "license": "MIT", - "dependencies": { - "assertion-error": "^2.0.1", - "check-error": "^2.1.1", - "deep-eql": "^5.0.1", - "loupe": "^3.1.0", - "pathval": "^2.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/check-error": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", - "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 16" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, - "license": "MIT" - }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true, - "license": "MIT" - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css-line-break": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", - "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", - "license": "MIT", - "dependencies": { - "utrie": "^1.0.2" - } - }, - "node_modules/csstype": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", - "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-eql": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", - "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/earcut": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.2.tgz", - "integrity": "sha512-X7hshQbLyMJ/3RPhyObLARM2sNxxmRALLKx1+NVFFnQ9gKzmCrxm9+uLIAdBcvc8FNLpctqlQ2V6AE92Ol9UDQ==", - "license": "ISC" - }, - "node_modules/electron-to-chromium": { - "version": "1.5.334", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.334.tgz", - "integrity": "sha512-mgjZAz7Jyx1SRCwEpy9wefDS7GvNPazLthHg8eQMJ76wBdGQQDW33TCrUTvQ4wzpmOrv2zrFoD3oNufMdyMpog==", - "dev": true, - "license": "ISC" - }, - "node_modules/es-module-lexer": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", - "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", - "dev": true, - "license": "MIT" - }, - "node_modules/esbuild": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", - "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.12", - "@esbuild/android-arm": "0.25.12", - "@esbuild/android-arm64": "0.25.12", - "@esbuild/android-x64": "0.25.12", - "@esbuild/darwin-arm64": "0.25.12", - "@esbuild/darwin-x64": "0.25.12", - "@esbuild/freebsd-arm64": "0.25.12", - "@esbuild/freebsd-x64": "0.25.12", - "@esbuild/linux-arm": "0.25.12", - "@esbuild/linux-arm64": "0.25.12", - "@esbuild/linux-ia32": "0.25.12", - "@esbuild/linux-loong64": "0.25.12", - "@esbuild/linux-mips64el": "0.25.12", - "@esbuild/linux-ppc64": "0.25.12", - "@esbuild/linux-riscv64": "0.25.12", - "@esbuild/linux-s390x": "0.25.12", - "@esbuild/linux-x64": "0.25.12", - "@esbuild/netbsd-arm64": "0.25.12", - "@esbuild/netbsd-x64": "0.25.12", - "@esbuild/openbsd-arm64": "0.25.12", - "@esbuild/openbsd-x64": "0.25.12", - "@esbuild/openharmony-arm64": "0.25.12", - "@esbuild/sunos-x64": "0.25.12", - "@esbuild/win32-arm64": "0.25.12", - "@esbuild/win32-ia32": "0.25.12", - "@esbuild/win32-x64": "0.25.12" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "9.39.4", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.4.tgz", - "integrity": "sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.8.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.21.2", - "@eslint/config-helpers": "^0.4.2", - "@eslint/core": "^0.17.0", - "@eslint/eslintrc": "^3.3.5", - "@eslint/js": "9.39.4", - "@eslint/plugin-kit": "^0.4.1", - "@humanfs/node": "^0.16.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.2", - "@types/estree": "^1.0.6", - "ajv": "^6.14.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.6", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.4.0", - "eslint-visitor-keys": "^4.2.1", - "espree": "^10.4.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.5", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "jiti": "*" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - } - } - }, - "node_modules/eslint-scope": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", - "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree": { - "version": "10.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", - "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.15.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", - "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eventemitter3": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", - "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", - "license": "MIT" - }, - "node_modules/expect-type": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz", - "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fdir": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^4.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/flatted": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz", - "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==", - "dev": true, - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/gifuct-js": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/gifuct-js/-/gifuct-js-2.1.2.tgz", - "integrity": "sha512-rI2asw77u0mGgwhV3qA+OEgYqaDn5UNqgs+Bx0FGwSpuqfYn+Ir6RQY5ENNQ8SbIiG/m5gVa7CD5RriO4f4Lsg==", - "license": "MIT", - "dependencies": { - "js-binary-schema-parser": "^2.0.3" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "16.5.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz", - "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/html2canvas": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", - "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", - "license": "MIT", - "dependencies": { - "css-line-break": "^2.1.0", - "text-segmentation": "^1.0.3" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", - "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/ismobilejs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-1.1.1.tgz", - "integrity": "sha512-VaFW53yt8QO61k2WJui0dHf4SlL8lxBofUuUmwBo0ljPk0Drz2TiuDW4jo3wDcv41qy/SxrJ+VAzJ/qYqsmzRw==", - "license": "MIT" - }, - "node_modules/js-binary-schema-parser": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/js-binary-schema-parser/-/js-binary-schema-parser-2.0.3.tgz", - "integrity": "sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg==", - "license": "MIT" - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", - "dev": true, - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "license": "MIT", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/loupe": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", - "integrity": "sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/magic-string": { - "version": "0.30.21", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", - "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.5" - } - }, - "node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" - }, - "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "license": "MIT" - }, - "node_modules/node-releases": { - "version": "2.0.37", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.37.tgz", - "integrity": "sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==", - "dev": true, - "license": "MIT" - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-svg-path": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", - "integrity": "sha512-JyPSBnkTJ0AI8GGJLfMXvKq42cj5c006fnLz6fXy6zfoVjJizi8BNTpu8on8ziI1cKy9d9DGNuY17Ce7wuejpQ==", - "license": "MIT" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/pathe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", - "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", - "dev": true, - "license": "MIT" - }, - "node_modules/pathval": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz", - "integrity": "sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14.16" - } - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true, - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", - "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pixi.js": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-8.17.1.tgz", - "integrity": "sha512-OB4TpZHrP5RYy+7FqmFrAc0IHRhfOoNIfF4sVeinvK3aG1r2pYrSMneJAKi9+WvGKC70Dj7GEpZ2OZGB6o/xdg==", - "license": "MIT", - "workspaces": [ - "examples", - "playground" - ], - "dependencies": { - "@pixi/colord": "^2.9.6", - "@types/earcut": "^3.0.0", - "@webgpu/types": "^0.1.69", - "@xmldom/xmldom": "^0.8.11", - "earcut": "^3.0.2", - "eventemitter3": "^5.0.1", - "gifuct-js": "^2.1.2", - "ismobilejs": "^1.1.1", - "parse-svg-path": "^0.1.2", - "tiny-lru": "^11.4.7" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/pixijs" - } - }, - "node_modules/playwright": { - "version": "1.59.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.1.tgz", - "integrity": "sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "playwright-core": "1.59.1" - }, - "bin": { - "playwright": "cli.js" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "fsevents": "2.3.2" - } - }, - "node_modules/playwright-core": { - "version": "1.59.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz", - "integrity": "sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "playwright-core": "cli.js" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/playwright/node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/postcss": { - "version": "8.5.9", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.9.tgz", - "integrity": "sha512-7a70Nsot+EMX9fFU3064K/kdHWZqGVY+BADLyXc8Dfv+mTLLVl6JzJpPaCZ2kQL9gIJvKXSLMHhqdRRjwQeFtw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.11", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/react": { - "version": "19.2.5", - "resolved": "https://registry.npmjs.org/react/-/react-19.2.5.tgz", - "integrity": "sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "19.2.5", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.5.tgz", - "integrity": "sha512-J5bAZz+DXMMwW/wV3xzKke59Af6CHY7G4uYLN1OvBcKEsWOs4pQExj86BBKamxl/Ik5bx9whOrvBlSDfWzgSag==", - "license": "MIT", - "dependencies": { - "scheduler": "^0.27.0" - }, - "peerDependencies": { - "react": "^19.2.5" - } - }, - "node_modules/react-refresh": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", - "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/rollup": { - "version": "4.60.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.1.tgz", - "integrity": "sha512-VmtB2rFU/GroZ4oL8+ZqXgSA38O6GR8KSIvWmEFv63pQ0G6KaBH9s07PO8XTXP4vI+3UJUEypOfjkGfmSBBR0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.8" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.60.1", - "@rollup/rollup-android-arm64": "4.60.1", - "@rollup/rollup-darwin-arm64": "4.60.1", - "@rollup/rollup-darwin-x64": "4.60.1", - "@rollup/rollup-freebsd-arm64": "4.60.1", - "@rollup/rollup-freebsd-x64": "4.60.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.60.1", - "@rollup/rollup-linux-arm-musleabihf": "4.60.1", - "@rollup/rollup-linux-arm64-gnu": "4.60.1", - "@rollup/rollup-linux-arm64-musl": "4.60.1", - "@rollup/rollup-linux-loong64-gnu": "4.60.1", - "@rollup/rollup-linux-loong64-musl": "4.60.1", - "@rollup/rollup-linux-ppc64-gnu": "4.60.1", - "@rollup/rollup-linux-ppc64-musl": "4.60.1", - "@rollup/rollup-linux-riscv64-gnu": "4.60.1", - "@rollup/rollup-linux-riscv64-musl": "4.60.1", - "@rollup/rollup-linux-s390x-gnu": "4.60.1", - "@rollup/rollup-linux-x64-gnu": "4.60.1", - "@rollup/rollup-linux-x64-musl": "4.60.1", - "@rollup/rollup-openbsd-x64": "4.60.1", - "@rollup/rollup-openharmony-arm64": "4.60.1", - "@rollup/rollup-win32-arm64-msvc": "4.60.1", - "@rollup/rollup-win32-ia32-msvc": "4.60.1", - "@rollup/rollup-win32-x64-gnu": "4.60.1", - "@rollup/rollup-win32-x64-msvc": "4.60.1", - "fsevents": "~2.3.2" - } - }, - "node_modules/scheduler": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", - "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", - "license": "MIT" - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/siginfo": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", - "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", - "dev": true, - "license": "ISC" - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stackback": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", - "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", - "dev": true, - "license": "MIT" - }, - "node_modules/std-env": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", - "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", - "dev": true, - "license": "MIT" - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-literal": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.1.0.tgz", - "integrity": "sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==", - "dev": true, - "license": "MIT", - "dependencies": { - "js-tokens": "^9.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/strip-literal/node_modules/js-tokens": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", - "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/text-segmentation": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", - "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", - "license": "MIT", - "dependencies": { - "utrie": "^1.0.2" - } - }, - "node_modules/tiny-lru": { - "version": "11.4.7", - "resolved": "https://registry.npmjs.org/tiny-lru/-/tiny-lru-11.4.7.tgz", - "integrity": "sha512-w/Te7uMUVeH0CR8vZIjr+XiN41V+30lkDdK+NRIDCUYKKuL9VcmaUEmaPISuwGhLlrTGh5yu18lENtR9axSxYw==", - "license": "BSD-3-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/tinybench": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", - "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", - "dev": true, - "license": "MIT" - }, - "node_modules/tinyexec": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", - "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/tinyglobby": { - "version": "0.2.16", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", - "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", - "dev": true, - "license": "MIT", - "dependencies": { - "fdir": "^6.5.0", - "picomatch": "^4.0.4" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/SuperchupuDev" - } - }, - "node_modules/tinypool": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.1.tgz", - "integrity": "sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.0.0 || >=20.0.0" - } - }, - "node_modules/tinyrainbow": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz", - "integrity": "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tinyspy": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-4.0.4.tgz", - "integrity": "sha512-azl+t0z7pw/z958Gy9svOTuzqIk6xq+NSheJzn5MMWtWTFywIacg2wUlzKFGtt3cthx0r2SxMK0yzJOR0IES7Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/ts-api-utils": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", - "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/typescript-eslint": { - "version": "8.58.1", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.58.1.tgz", - "integrity": "sha512-gf6/oHChByg9HJvhMO1iBexJh12AqqTfnuxscMDOVqfJW3htsdRJI/GfPpHTTcyeB8cSTUY2JcZmVgoyPqcrDg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/eslint-plugin": "8.58.1", - "@typescript-eslint/parser": "8.58.1", - "@typescript-eslint/typescript-estree": "8.58.1", - "@typescript-eslint/utils": "8.58.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", - "typescript": ">=4.8.4 <6.1.0" - } - }, - "node_modules/undici-types": { - "version": "7.19.2", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.19.2.tgz", - "integrity": "sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==", - "dev": true, - "license": "MIT" - }, - "node_modules/update-browserslist-db": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/utrie": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", - "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", - "license": "MIT", - "dependencies": { - "base64-arraybuffer": "^1.0.2" - } - }, - "node_modules/vite": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.4.2.tgz", - "integrity": "sha512-2N/55r4JDJ4gdrCvGgINMy+HH3iRpNIz8K6SFwVsA+JbQScLiC+clmAxBgwiSPgcG9U15QmvqCGWzMbqda5zGQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "^0.25.0", - "fdir": "^6.4.4", - "picomatch": "^4.0.2", - "postcss": "^8.5.3", - "rollup": "^4.34.9", - "tinyglobby": "^0.2.13" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || ^20.0.0 || >=22.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", - "jiti": ">=1.21.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.16.0", - "tsx": "^4.8.1", - "yaml": "^2.4.2" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "jiti": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - }, - "tsx": { - "optional": true - }, - "yaml": { - "optional": true - } - } - }, - "node_modules/vite-node": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.2.4.tgz", - "integrity": "sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cac": "^6.7.14", - "debug": "^4.4.1", - "es-module-lexer": "^1.7.0", - "pathe": "^2.0.3", - "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" - }, - "bin": { - "vite-node": "vite-node.mjs" - }, - "engines": { - "node": "^18.0.0 || ^20.0.0 || >=22.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - } - }, - "node_modules/vitest": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.4.tgz", - "integrity": "sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/chai": "^5.2.2", - "@vitest/expect": "3.2.4", - "@vitest/mocker": "3.2.4", - "@vitest/pretty-format": "^3.2.4", - "@vitest/runner": "3.2.4", - "@vitest/snapshot": "3.2.4", - "@vitest/spy": "3.2.4", - "@vitest/utils": "3.2.4", - "chai": "^5.2.0", - "debug": "^4.4.1", - "expect-type": "^1.2.1", - "magic-string": "^0.30.17", - "pathe": "^2.0.3", - "picomatch": "^4.0.2", - "std-env": "^3.9.0", - "tinybench": "^2.9.0", - "tinyexec": "^0.3.2", - "tinyglobby": "^0.2.14", - "tinypool": "^1.1.1", - "tinyrainbow": "^2.0.0", - "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0", - "vite-node": "3.2.4", - "why-is-node-running": "^2.3.0" - }, - "bin": { - "vitest": "vitest.mjs" - }, - "engines": { - "node": "^18.0.0 || ^20.0.0 || >=22.0.0" - }, - "funding": { - "url": "https://opencollective.com/vitest" - }, - "peerDependencies": { - "@edge-runtime/vm": "*", - "@types/debug": "^4.1.12", - "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", - "@vitest/browser": "3.2.4", - "@vitest/ui": "3.2.4", - "happy-dom": "*", - "jsdom": "*" - }, - "peerDependenciesMeta": { - "@edge-runtime/vm": { - "optional": true - }, - "@types/debug": { - "optional": true - }, - "@types/node": { - "optional": true - }, - "@vitest/browser": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - } - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/why-is-node-running": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz", - "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==", - "dev": true, - "license": "MIT", - "dependencies": { - "siginfo": "^2.0.0", - "stackback": "0.0.2" - }, - "bin": { - "why-is-node-running": "cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true, - "license": "ISC" - }, - "node_modules/yaml": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz", - "integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==", - "license": "ISC", - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - }, - "funding": { - "url": "https://github.com/sponsors/eemeli" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - } -} diff --git a/frontend/package.json b/frontend/package.json deleted file mode 100644 index e47cfde..0000000 --- a/frontend/package.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "name": "antelab-frontend", - "version": "0.1.0", - "private": true, - "type": "module", - "scripts": { - "dev": "vite", - "build": "tsc -b && vite build", - "preview": "vite preview", - "test": "vitest run", - "test:e2e": "playwright test", - "test:e2e:show": "playwright test e2e/show-deck-demo.spec.ts", - "lint": "eslint . --ext .ts,.tsx", - "typecheck": "tsc --noEmit" - }, - "dependencies": { - "html2canvas": "^1.4.1", - "pixi.js": "^8.17.1", - "react": "^19.1.0", - "react-dom": "^19.1.0", - "yaml": "^2.8.2" - }, - "devDependencies": { - "@eslint/js": "^9.25.0", - "@playwright/test": "^1.59.1", - "@types/node": "^25.6.0", - "@types/react": "^19.1.2", - "@types/react-dom": "^19.1.2", - "@vitejs/plugin-react": "^4.4.1", - "eslint": "^9.25.0", - "globals": "^16.0.0", - "typescript": "~5.8.3", - "typescript-eslint": "^8.31.0", - "vite": "^6.3.2", - "vitest": "^3.2.4" - } -} diff --git a/frontend/playwright.config.ts b/frontend/playwright.config.ts deleted file mode 100644 index ec31593..0000000 --- a/frontend/playwright.config.ts +++ /dev/null @@ -1,28 +0,0 @@ -import path from "node:path"; -import { fileURLToPath } from "node:url"; -import { defineConfig, devices } from "@playwright/test"; - -const frontendRoot = path.dirname(fileURLToPath(import.meta.url)); - -export default defineConfig({ - testDir: "./e2e", - fullyParallel: false, - workers: 1, - forbidOnly: Boolean(process.env.CI), - retries: process.env.CI ? 1 : 0, - reporter: "list", - timeout: 120_000, - expect: { timeout: 25_000 }, - use: { - ...devices["Desktop Chrome"], - baseURL: "http://127.0.0.1:3000", - trace: "on-first-retry", - }, - webServer: { - command: "bash ./scripts/e2e-dev-stack.sh", - cwd: frontendRoot, - url: "http://127.0.0.1:3000/", - timeout: 180_000, - reuseExistingServer: !process.env.CI, - }, -}); diff --git a/frontend/public/cast/company/portraits/.gitkeep b/frontend/public/cast/company/portraits/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/frontend/public/demo/founder-duo-seed-55.json b/frontend/public/demo/founder-duo-seed-55.json deleted file mode 100644 index 6084f65..0000000 --- a/frontend/public/demo/founder-duo-seed-55.json +++ /dev/null @@ -1,56812 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:19.983698", - "config_path": "experiments/company-founder-duo.yaml", - "seed": 55, - "ticks": 64, - "scenario": { - "id": "company-founder-duo", - "title": "Founder Duo", - "hypothesis": "Two co-founders with complementary skills survive longer than a solo founder.", - "counter_hypothesis": "Co-founder disagreement and role ambiguity create friction that kills the company faster.", - "tags": [ - "company", - "founders", - "partnership", - "organization" - ] - }, - "snapshots": [ - { - "name": "Founder Duo", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 21, - "operating_cost_per_tick": 3, - "runway_ticks": 7, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.39999999999999997, - "evidence": [] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0421, - "ipo_triggered": false, - "ipo_progress": 4.21e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Company burned 3 cash for operations" - ] - }, - { - "name": "Founder Duo", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.6666666666666666, - "average_fatigue": 0.6666666666666666 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 10, - "operating_cost_per_tick": 3, - "runway_ticks": 3, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.041, - "ipo_triggered": false, - "ipo_progress": 4.1e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 0, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Jordan rests", - "[Tick 2] Company burned 3 cash for operations" - ] - }, - { - "name": "Founder Duo", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 7, - "operating_cost_per_tick": 3, - "runway_ticks": 2, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0607, - "ipo_triggered": false, - "ipo_progress": 6.07e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Jordan rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations" - ] - }, - { - "name": "Founder Duo", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.3333333333333333, - "average_fatigue": 1.3333333333333333 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 4, - "operating_cost_per_tick": 3, - "runway_ticks": 1, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0604, - "ipo_triggered": false, - "ipo_progress": 6.04e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Jordan rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations" - ] - }, - { - "name": "Founder Duo", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.6666666666666667, - "average_fatigue": 1.6666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 1, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0601, - "ipo_triggered": false, - "ipo_progress": 6.0100000000000004e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Jordan rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 5] Company burned 3 cash for operations" - ] - }, - { - "name": "Founder Duo", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Jordan rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 6] Company burned 3 cash for operations" - ] - }, - { - "name": "Founder Duo", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.3333333333333335, - "average_fatigue": 2.3333333333333335 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Jordan rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.6666666666666665, - "average_fatigue": 2.6666666666666665 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Jordan rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Mina created role: Manager", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Mina created role: Manager", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 3.3333333333333335 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Mina rests", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Mina created role: Manager", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 2.3333333333333335 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 9, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Mina created role: Manager", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 11] Company missed demand first-prototype" - ] - }, - { - "name": "Founder Duo", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.6666666666666665, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Jordan" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 10, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company burned 3 cash for operations", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Mina created role: Manager", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 11] Company missed demand first-prototype", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.666666666666667, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 11, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Mina created role: Manager", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 11] Company missed demand first-prototype", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina created role: Manager", - "[Tick 12] Jordan created role: Manager", - "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 3.6666666666666665 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 14, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 10, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 11] Company missed demand first-prototype", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina created role: Manager", - "[Tick 12] Jordan created role: Manager", - "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 13] Avery rests", - "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.333333333333333, - "average_fatigue": 3.3333333333333335 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 14, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 15, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 9, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company missed demand first-prototype", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina created role: Manager", - "[Tick 12] Jordan created role: Manager", - "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 13] Avery rests", - "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 1.6666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 14, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 15, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina created role: Manager", - "[Tick 12] Jordan created role: Manager", - "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 13] Avery rests", - "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Jordan rests" - ] - }, - { - "name": "Founder Duo", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.666666666666667, - "average_fatigue": 1.6666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 14, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 15, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Mina created role: Manager", - "[Tick 12] Jordan created role: Manager", - "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 13] Avery rests", - "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Jordan rests", - "[Tick 16] Avery rests", - "[Tick 16] Jordan rests" - ] - }, - { - "name": "Founder Duo", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.333333333333333, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 14, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 15, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Jordan created role: Manager", - "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 13] Avery rests", - "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Jordan rests", - "[Tick 16] Avery rests", - "[Tick 16] Jordan rests", - "[Tick 17] Avery rests" - ] - }, - { - "name": "Founder Duo", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 2.3333333333333335 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 15, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 19, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Jordan rests", - "[Tick 16] Avery rests", - "[Tick 16] Jordan rests", - "[Tick 17] Avery rests", - "[Tick 18] Jordan created role: Manager", - "[Tick 18] Mina created role: Manager", - "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 2.6666666666666665 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 19, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 20, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 15] Jordan rests", - "[Tick 16] Avery rests", - "[Tick 16] Jordan rests", - "[Tick 17] Avery rests", - "[Tick 18] Jordan created role: Manager", - "[Tick 18] Mina created role: Manager", - "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina created role: Manager", - "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 19, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 20, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 21, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Avery rests", - "[Tick 18] Jordan created role: Manager", - "[Tick 18] Mina created role: Manager", - "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina created role: Manager", - "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Avery rests", - "[Tick 21] Company missed demand customer-pilot", - "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 3.3333333333333335 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 19, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 20, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 21, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 18] Mina created role: Manager", - "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina created role: Manager", - "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Avery rests", - "[Tick 21] Company missed demand customer-pilot", - "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Jordan rests", - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 3.6666666666666665 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 19, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 20, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 21, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 18] Mina created role: Manager", - "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina created role: Manager", - "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Avery rests", - "[Tick 21] Company missed demand customer-pilot", - "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Jordan rests", - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 2.6666666666666665 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 20, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 21, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 10, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina created role: Manager", - "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Avery rests", - "[Tick 21] Company missed demand customer-pilot", - "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Jordan rests", - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery created role: Manager", - "[Tick 23] Mina rests" - ] - }, - { - "name": "Founder Duo", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 21, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 25, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 9, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Avery rests", - "[Tick 21] Company missed demand customer-pilot", - "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Jordan rests", - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery created role: Manager", - "[Tick 23] Mina rests", - "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 1.3333333333333333 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 25, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 26, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 8, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Avery rests", - "[Tick 21] Company missed demand customer-pilot", - "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Jordan rests", - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery created role: Manager", - "[Tick 23] Mina rests", - "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 25, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 26, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 27, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Company missed demand customer-pilot", - "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Jordan rests", - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery created role: Manager", - "[Tick 23] Mina rests", - "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 1.3333333333333333 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 25, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 26, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 27, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 11, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Jordan rests", - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery created role: Manager", - "[Tick 23] Mina rests", - "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 27] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 1.6666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 25, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 26, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 27, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery created role: Manager", - "[Tick 23] Mina rests", - "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 27] Mina created role: Manager", - "[Tick 28] Jordan created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.3333333333333335, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 26, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 27, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery created role: Manager", - "[Tick 23] Mina rests", - "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 27] Mina created role: Manager", - "[Tick 28] Jordan created role: Manager", - "[Tick 29] Avery rests" - ] - }, - { - "name": "Founder Duo", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 2.6666666666666665 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 27, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 13, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 5, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 27] Mina created role: Manager", - "[Tick 28] Jordan created role: Manager", - "[Tick 29] Avery rests", - "[Tick 30] Avery rests", - "[Tick 30] Jordan created role: Manager", - "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 3.6666666666666665 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 32, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 32, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 13, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 6, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 27] Mina created role: Manager", - "[Tick 28] Jordan created role: Manager", - "[Tick 29] Avery rests", - "[Tick 30] Avery rests", - "[Tick 30] Jordan created role: Manager", - "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 4.666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 32, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 32, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 7, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 28] Jordan created role: Manager", - "[Tick 29] Avery rests", - "[Tick 30] Avery rests", - "[Tick 30] Jordan created role: Manager", - "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 5.666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 32, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 32, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 15, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 8, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Avery rests", - "[Tick 30] Avery rests", - "[Tick 30] Jordan created role: Manager", - "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Avery created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 6.666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 32, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 32, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 35, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 15, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 9, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 30] Avery rests", - "[Tick 30] Jordan created role: Manager", - "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Avery created role: Manager", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.333333333333334, - "average_fatigue": 6.333333333333333 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 32, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-32", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 32, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 35, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 16, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 12, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 10, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Avery created role: Manager", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery rests", - "[Tick 35] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.333333333333334, - "average_fatigue": 7.333333333333333 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 35, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 16, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 4, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 13, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 11, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Avery created role: Manager", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery rests", - "[Tick 35] Mina created role: Manager", - "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.666666666666666, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 35, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 38, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 16, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 5, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 14, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 10, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 32] Mina created role: Manager", - "[Tick 33] Avery created role: Manager", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery rests", - "[Tick 35] Mina created role: Manager", - "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Mina rests", - "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 6.666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 35, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 38, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 16, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 15, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 9, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 33] Avery created role: Manager", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery rests", - "[Tick 35] Mina created role: Manager", - "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Mina rests", - "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.333333333333334, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-coordination-40", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 40, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 18, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 7, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 16, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Mina rests", - "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Founder Duo", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.666666666666666, - "average_fatigue": 7.666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-coordination-40", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 40, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 18, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 8, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 17, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Mina rests", - "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Founder Duo", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 8.333333333333334 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-38", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 38, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-coordination-40", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 40, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 9, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 18, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests" - ] - }, - { - "name": "Founder Duo", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.333333333333334, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-coordination-40", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 40, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 10, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 19, - "fatigue": 19, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests" - ] - }, - { - "name": "Founder Duo", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.666666666666666, - "average_fatigue": 9.666666666666666 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-coordination-40", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 40, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 44, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 11, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 20, - "fatigue": 20, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 10.333333333333334 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-crafting-45", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 12, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 21, - "fatigue": 21, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building." - ] - }, - { - "name": "Founder Duo", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.333333333333334, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-crafting-45", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-coordination-46", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 46, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 13, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 78, - "immune_resilience": 50, - "stress": 22, - "hunger": 22, - "fatigue": 22, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Founder Duo", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.666666666666666, - "average_fatigue": 11.666666666666666 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-crafting-45", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-coordination-46", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 46, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 14, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 77, - "immune_resilience": 50, - "stress": 23, - "hunger": 23, - "fatigue": 23, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Jordan created role: Manager", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Founder Duo", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.333333333333334, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-44", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 44, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-crafting-45", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-coordination-46", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 46, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 15, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 22, - "fatigue": 20, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests" - ] - }, - { - "name": "Founder Duo", - "tick": 49, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.333333333333334, - "average_fatigue": 10.333333333333334 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-crafting-45", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-coordination-46", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 46, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 49, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 16, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 49, - "life_stage": "juvenile", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 21, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Mina created role: Manager", - "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests" - ] - }, - { - "name": "Founder Duo", - "tick": 50, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.666666666666666, - "average_fatigue": 10.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-coordination-46", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "7a4cabe4", - "tick": 46, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 50, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 50, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 19, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 50, - "life_stage": "juvenile", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 17, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 50, - "life_stage": "juvenile", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 20, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 41] Jordan created role: Manager", - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests", - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 51, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 9.666666666666666 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 50, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 50, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 20, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 51, - "life_stage": "juvenile", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 18, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 51, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 19, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 49, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests", - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 52, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.333333333333334, - "average_fatigue": 9.333333333333334 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 50, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 50, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 20, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 52, - "life_stage": "juvenile", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 19, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 52, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 18, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 50, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests", - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 53, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.666666666666666, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 50, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 50, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 20, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 53, - "life_stage": "juvenile", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 20, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 53, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 17, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 51, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 41] Mina rests", - "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests", - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 54, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 8.666666666666666 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 50, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-50", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 50, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 20, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 54, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 21, - "fatigue": 19, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 54, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 18, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 52, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests", - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager", - "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 53] Mina rests" - ] - }, - { - "name": "Founder Duo", - "tick": 55, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 20, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 55, - "life_stage": "juvenile", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 22, - "fatigue": 20, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 55, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 19, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 53, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 47] Jordan rests", - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager", - "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 53] Mina rests", - "[Tick 54] Mina rests" - ] - }, - { - "name": "Founder Duo", - "tick": 56, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.666666666666666, - "average_fatigue": 9.666666666666666 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 56, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 56, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 20, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 56, - "life_stage": "juvenile", - "vitality": 78, - "immune_resilience": 50, - "stress": 22, - "hunger": 23, - "fatigue": 21, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 56, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 20, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 54, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 47] Jordan rests", - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager", - "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 53] Mina rests", - "[Tick 54] Mina rests", - "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 57, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 56, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 56, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 20, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 57, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 22, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 57, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 21, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 55, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager", - "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 53] Mina rests", - "[Tick 54] Mina rests", - "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Avery rests" - ] - }, - { - "name": "Founder Duo", - "tick": 58, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 8.333333333333334 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 56, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 56, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 21, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - }, - { - "role_id": "role-021", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 58, - "life_stage": "juvenile", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 21, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 58, - "life_stage": "juvenile", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 22, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 56, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager", - "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 53] Mina rests", - "[Tick 54] Mina rests", - "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Avery rests", - "[Tick 57] Jordan created role: Manager" - ] - }, - { - "name": "Founder Duo", - "tick": 59, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 7.666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 56, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 56, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-crafting-59", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "7a4cabe4", - "tick": 59, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 21, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - }, - { - "role_id": "role-021", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 59, - "life_stage": "juvenile", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 20, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 59, - "life_stage": "juvenile", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 23, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 57, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Mina created role: Manager", - "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 53] Mina rests", - "[Tick 54] Mina rests", - "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Avery rests", - "[Tick 57] Jordan created role: Manager", - "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building." - ] - }, - { - "name": "Founder Duo", - "tick": 60, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 2, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8d6d8c79-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 56, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-56", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 56, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-crafting-59", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "7a4cabe4", - "tick": 59, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-60", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 60, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 21, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - }, - { - "role_id": "role-021", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 60, - "life_stage": "adult", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 19, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 60, - "life_stage": "adult", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 24, - "fatigue": 12, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 5, - "target_ticks": 21 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 58, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Jordan started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "[Tick 53] Mina rests", - "[Tick 54] Mina rests", - "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Avery rests", - "[Tick 57] Jordan created role: Manager", - "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 59] Jordan started pregnancy (partner: Avery)", - "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 61, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 2, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 6.333333333333333 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-crafting-59", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "7a4cabe4", - "tick": 59, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-60", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 60, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 23, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - }, - { - "role_id": "role-021", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-022", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 60 - }, - { - "role_id": "role-023", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 60 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 61, - "life_stage": "adult", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 18, - "fatigue": 6, - "pregnancy": { - "partner_hint": "Jordan", - "progress_ticks": 4, - "target_ticks": 28 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 61, - "life_stage": "adult", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 25, - "fatigue": 13, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 5, - "target_ticks": 21 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 59, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Jordan started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery started pregnancy (partner: Jordan)", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 56] Avery rests", - "[Tick 57] Jordan created role: Manager", - "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 59] Jordan started pregnancy (partner: Avery)", - "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Jordan created role: Manager", - "[Tick 60] Mina created role: Manager", - "[Tick 60] Avery started pregnancy (partner: Jordan)" - ] - }, - { - "name": "Founder Duo", - "tick": 62, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 3, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 5.666666666666667 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-crafting-59", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "7a4cabe4", - "tick": 59, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-60", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 60, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-62", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 62, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-62", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 62, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 23, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - }, - { - "role_id": "role-021", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-022", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 60 - }, - { - "role_id": "role-023", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 60 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 62, - "life_stage": "adult", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 17, - "fatigue": 3, - "pregnancy": { - "partner_hint": "Jordan", - "progress_ticks": 4, - "target_ticks": 28 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 62, - "life_stage": "adult", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 26, - "fatigue": 14, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 5, - "target_ticks": 21 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 60, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 3, - "target_ticks": 26 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Jordan started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery started pregnancy (partner: Jordan)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Mina started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 57] Jordan created role: Manager", - "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 59] Jordan started pregnancy (partner: Avery)", - "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Jordan created role: Manager", - "[Tick 60] Mina created role: Manager", - "[Tick 60] Avery started pregnancy (partner: Jordan)", - "[Tick 61] Mina started pregnancy (partner: Avery)", - "[Tick 62] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 62] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 63, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 3, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-crafting-59", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "7a4cabe4", - "tick": 59, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-7a4cabe4-delegation-60", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 60, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-62", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 62, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-62", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 62, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 23, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - }, - { - "role_id": "role-021", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-022", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 60 - }, - { - "role_id": "role-023", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 60 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 63, - "life_stage": "adult", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 16, - "fatigue": 0, - "pregnancy": { - "partner_hint": "Jordan", - "progress_ticks": 4, - "target_ticks": 28 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 63, - "life_stage": "adult", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 27, - "fatigue": 15, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 5, - "target_ticks": 21 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 61, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 3, - "target_ticks": 26 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Jordan started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery started pregnancy (partner: Jordan)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Mina started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 57] Jordan created role: Manager", - "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 59] Jordan started pregnancy (partner: Avery)", - "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Jordan created role: Manager", - "[Tick 60] Mina created role: Manager", - "[Tick 60] Avery started pregnancy (partner: Jordan)", - "[Tick 61] Mina started pregnancy (partner: Avery)", - "[Tick 62] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 62] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Founder Duo", - "tick": 64, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 2, - "prototype": 1 - }, - "supply_market": { - "parts": 12 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 3, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.333333333333334, - "average_fatigue": 5.333333333333333 - }, - "company": { - "enabled": true, - "name": "Duo Works", - "stage": "founder-duo", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "7a4cabe4": [ - "Manager" - ], - "8d6d8c79": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery", - "Jordan" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "customer-pilot", - "description": "Run a paid pilot with early adopters", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 20, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-7a4cabe4-delegation-60", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "7a4cabe4", - "tick": 60, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-8d6d8c79-delegation-62", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8d6d8c79", - "tick": 62, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delegation-62", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 62, - "stage": "founder-duo" - }, - { - "suggestion_id": "sug-ops-1-delivery-64", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "ops-1", - "tick": 64, - "stage": "founder-duo" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 23, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 6 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 11 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 23 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-015", - "name": "Manager", - "holder_agent_id": "7a4cabe4", - "department_id": null, - "created_tick": 33 - }, - { - "role_id": "role-016", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-017", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-018", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-019", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-020", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 50 - }, - { - "role_id": "role-021", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-022", - "name": "Manager", - "holder_agent_id": "8d6d8c79", - "department_id": null, - "created_tick": 60 - }, - { - "role_id": "role-023", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 60 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "bread_bundle": { - "inputs": { - "wheat": 2 - }, - "outputs": { - "bread": 1 - } - } - }, - "agents": [ - { - "id": "7a4cabe4", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 64, - "life_stage": "adult", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 15, - "fatigue": 0, - "pregnancy": { - "partner_hint": "Jordan", - "progress_ticks": 4, - "target_ticks": 28 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8d6d8c79", - "name": "Jordan", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 64, - "life_stage": "adult", - "vitality": 78, - "immune_resilience": 50, - "stress": 22, - "hunger": 28, - "fatigue": 16, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 5, - "target_ticks": 21 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 62, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": { - "partner_hint": "Avery", - "progress_ticks": 3, - "target_ticks": 26 - }, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand customer-pilot", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 46] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Jordan rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Jordan says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Jordan started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Jordan created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery started pregnancy (partner: Jordan)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Mina started pregnancy (partner: Avery)", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 64] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 59] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 59] Jordan started pregnancy (partner: Avery)", - "[Tick 60] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Jordan created role: Manager", - "[Tick 60] Mina created role: Manager", - "[Tick 60] Avery started pregnancy (partner: Jordan)", - "[Tick 61] Mina started pregnancy (partner: Avery)", - "[Tick 62] Suggestion for Jordan: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 62] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 64] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - } - ], - "observer_summary": { - "ticks_recorded": 64, - "action_distribution": { - "form_team": 27, - "deliver": 25, - "accept_suggestion": 25, - "create_role": 23, - "craft": 21, - "rest": 20, - "say": 19, - "interview": 17, - "recruit": 13 - }, - "total_communications": 19, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 127, - "total_actions": 190, - "failure_rate": 0.6684210526315789, - "top_colocation_pairs": [ - { - "agents": [ - "7a4cabe4", - "8d6d8c79" - ], - "ticks_together": 64 - }, - { - "agents": [ - "7a4cabe4", - "ops-1" - ], - "ticks_together": 63 - }, - { - "agents": [ - "8d6d8c79", - "ops-1" - ], - "ticks_together": 63 - } - ], - "final_alive_agents": 3, - "final_resource_total": 17, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "deliver": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "recruit": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "deliver": 1, - "recruit": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "create_role": 1, - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "accept_suggestion": 2, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "interview": 1, - "accept_suggestion": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "form_team": 1, - "craft": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "say": 1, - "craft": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "say": 1, - "deliver": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "craft": 1, - "deliver": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "rest": 1, - "interview": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "say": 2, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 2, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "recruit": 1, - "create_role": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "rest": 1, - "recruit": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "create_role": 1, - "deliver": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "deliver": 1, - "rest": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "rest": 2, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "rest": 1, - "recruit": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "accept_suggestion": 1, - "create_role": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "create_role": 2, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "rest": 1, - "form_team": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "deliver": 1, - "rest": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "accept_suggestion": 2, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "create_role": 1, - "recruit": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "craft": 1, - "say": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "accept_suggestion": 1, - "interview": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "form_team": 1, - "craft": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "interview": 1, - "say": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "interview": 1, - "create_role": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "rest": 1, - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "rest": 1, - "create_role": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "say": 1, - "recruit": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "say": 1, - "interview": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "create_role": 1, - "craft": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "form_team": 2, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "rest": 1, - "recruit": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "say": 1, - "accept_suggestion": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "accept_suggestion": 1, - "say": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "say": 1, - "form_team": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "say": 1, - "create_role": 2 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "say": 1, - "accept_suggestion": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "interview": 1, - "create_role": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "deliver": 1, - "accept_suggestion": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "accept_suggestion": 2, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "interview": 1, - "deliver": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "recruit": 2, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "craft": 1, - "deliver": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "craft": 1, - "rest": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 48, - "action_verbs": { - "craft": 1, - "form_team": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 49, - "action_verbs": { - "accept_suggestion": 1, - "form_team": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 50, - "action_verbs": { - "craft": 1, - "form_team": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 51, - "action_verbs": { - "deliver": 1, - "craft": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 52, - "action_verbs": { - "accept_suggestion": 2, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 53, - "action_verbs": { - "form_team": 1, - "say": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 54, - "action_verbs": { - "recruit": 2, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 55, - "action_verbs": { - "form_team": 3 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 56, - "action_verbs": { - "rest": 1, - "form_team": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 57, - "action_verbs": { - "accept_suggestion": 1, - "create_role": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 58, - "action_verbs": { - "craft": 1, - "interview": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 59, - "action_verbs": { - "form_team": 1, - "deliver": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 60, - "action_verbs": { - "deliver": 1, - "create_role": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 61, - "action_verbs": { - "deliver": 1, - "form_team": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 62, - "action_verbs": { - "accept_suggestion": 1, - "deliver": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 63, - "action_verbs": { - "craft": 1, - "deliver": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 3, - "agent_locations": { - "7a4cabe4": "garage_office", - "8d6d8c79": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 17, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/gauntlet-seed-42.json b/frontend/public/demo/gauntlet-seed-42.json deleted file mode 100644 index 9fe7894..0000000 --- a/frontend/public/demo/gauntlet-seed-42.json +++ /dev/null @@ -1,69100 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:19.887779", - "config_path": "experiments/company-survival-gauntlet.yaml", - "seed": 42, - "ticks": 64, - "scenario": { - "id": "company-survival-gauntlet", - "title": "Company Survival Gauntlet", - "hypothesis": "A company can regenerate through successive shocks if knowledge, delivery, and team continuity outlive the founder.", - "counter_hypothesis": "The company collapses when shocks remove founder control, market fit, cash, talent, or operating rhythm.", - "tags": [ - "company", - "gauntlet", - "survival", - "shocks", - "organization" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.6666666666666666, - "average_fatigue": 0.6666666666666666 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 34, - "operating_cost_per_tick": 2, - "runway_ticks": 17, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 3, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery", - "Ilya", - "Mina" - ], - "confidence": 0.6, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 34, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0634, - "ipo_triggered": false, - "ipo_progress": 6.34e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Ilya rests", - "[Tick 1] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.25, - "average_fatigue": 1.25 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 24, - "operating_cost_per_tick": 2, - "runway_ticks": 12, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 4, - "active_contributor_count": 3, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "last action: said: Let's coordinate on the next delivery.", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Nora" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 24, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0624, - "ipo_triggered": false, - "ipo_progress": 6.24e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "recruited Nora", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 0, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Ilya rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.25, - "average_fatigue": 2.25 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 22, - "operating_cost_per_tick": 2, - "runway_ticks": 11, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 4, - "active_contributor_count": 3, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "last action: said: Let's coordinate on the next delivery.", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Nora" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 22, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0822, - "ipo_triggered": false, - "ipo_progress": 8.22e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 1 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "recruited Nora", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Ilya rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Office over capacity (4/3)" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.25, - "average_fatigue": 3.25 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 20, - "operating_cost_per_tick": 2, - "runway_ticks": 10, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 4, - "active_contributor_count": 4, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "last action: said: Let's coordinate on the next delivery.", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Nora" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 60 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 20, - "delivery_continuity": 0, - "decision_continuity": 60, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.082, - "ipo_triggered": false, - "ipo_progress": 8.2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 2 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "recruited Nora", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Office over capacity (4/3)", - "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Office over capacity (4/3)" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.25, - "average_fatigue": 4.25 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 18, - "operating_cost_per_tick": 2, - "runway_ticks": 9, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 4, - "active_contributor_count": 4, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery", - "Ilya", - "Mina" - ], - "confidence": 0.8, - "evidence": [ - "last action: said: Let's coordinate on the next delivery.", - "last action: said: Let's coordinate on the next delivery.", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 60 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 18, - "delivery_continuity": 0, - "decision_continuity": 60, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0818, - "ipo_triggered": false, - "ipo_progress": 8.18e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 3 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 2 cash for operations", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Office over capacity (4/3)", - "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Office over capacity (4/3)", - "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Nora created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 5] Office over capacity (4/3)" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.75, - "average_fatigue": 4.25 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 16, - "operating_cost_per_tick": 2, - "runway_ticks": 8, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 4, - "active_contributor_count": 4, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "last action: said: Let's coordinate on the next delivery.", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 60 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 16, - "delivery_continuity": 0, - "decision_continuity": 60, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0816, - "ipo_triggered": false, - "ipo_progress": 8.16e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 4 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 4, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Office over capacity (4/3)", - "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Nora created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 5] Office over capacity (4/3)", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 6] Office over capacity (4/3)" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.75, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 14, - "operating_cost_per_tick": 2, - "runway_ticks": 7, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 4, - "active_contributor_count": 4, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "last action: said: Let's coordinate on the next delivery.", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 60 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 14, - "delivery_continuity": 0, - "decision_continuity": 60, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0814, - "ipo_triggered": false, - "ipo_progress": 8.14e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 5 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Nora created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 5] Office over capacity (4/3)", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 6] Office over capacity (4/3)", - "[Tick 6] Nora rests", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Office over capacity (4/3)" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.75, - "average_fatigue": 3.75 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 12, - "operating_cost_per_tick": 2, - "runway_ticks": 6, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 4, - "active_contributor_count": 4, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 60 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 12, - "delivery_continuity": 0, - "decision_continuity": 60, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0812, - "ipo_triggered": false, - "ipo_progress": 8.12e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 6 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Office over capacity (4/3)", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 6] Office over capacity (4/3)", - "[Tick 6] Nora rests", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Office over capacity (4/3)", - "[Tick 7] Mina created role: Manager", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Office over capacity (4/3)" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 4, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 4, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.75, - "average_fatigue": 4.25 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 10, - "operating_cost_per_tick": 2, - "runway_ticks": 5, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 4, - "active_contributor_count": 4, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 60 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 10, - "delivery_continuity": 0, - "decision_continuity": 60, - "knowledge_continuity": 0, - "team_regeneration": 4, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delegation-9", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 9, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.081, - "ipo_triggered": false, - "ipo_progress": 8.1e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 7 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Office over capacity (4/3)", - "[Tick 7] Mina created role: Manager", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Office over capacity (4/3)", - "[Tick 8] Nora rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 9] Office over capacity (4/3)" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.333333333333333, - "average_fatigue": 6.333333333333333 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 8, - "operating_cost_per_tick": 2, - "runway_ticks": 4, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 8, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 0, - "recovered": true - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delegation-9", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 9, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0608, - "ipo_triggered": false, - "ipo_progress": 6.08e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Office over capacity (4/3)", - "[Tick 8] Nora rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 9] Office over capacity (4/3)", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Nora rests", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 6, - "operating_cost_per_tick": 2, - "runway_ticks": 3, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 6, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 1, - "recovered": true - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delegation-9", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 9, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0606, - "ipo_triggered": false, - "ipo_progress": 6.0600000000000004e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 9] Office over capacity (4/3)", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Nora rests", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 4, - "operating_cost_per_tick": 2, - "runway_ticks": 2, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 4, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 2, - "recovered": true - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delegation-9", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 9, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0604, - "ipo_triggered": false, - "ipo_progress": 6.04e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 12, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 9] Office over capacity (4/3)", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Nora rests", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.333333333333334, - "average_fatigue": 7.666666666666667 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 2, - "operating_cost_per_tick": 2, - "runway_ticks": 1, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 2, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 3, - "recovered": true - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delegation-9", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 9, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0602, - "ipo_triggered": false, - "ipo_progress": 6.02e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 11, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 12, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Nora rests", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 12] Mina rests", - "[Tick 13] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.666666666666666, - "average_fatigue": 7.333333333333333 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 14, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 10, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 13, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 12] Mina rests", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 14] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.333333333333334, - "average_fatigue": 5.666666666666667 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 15, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 15, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 15, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 9, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 14, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 12] Mina rests", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 14] Mina created role: Manager", - "[Tick 14] Nora rests", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 16, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 15, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 15, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 15, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 2 cash for operations", - "[Tick 12] Mina rests", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 14] Mina created role: Manager", - "[Tick 14] Nora rests", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.666666666666667, - "average_fatigue": 5.333333333333333 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 17, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 15, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 15, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 16, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Mina rests", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 14] Mina created role: Manager", - "[Tick 14] Nora rests", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.666666666666667, - "average_fatigue": 5.666666666666667 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 18, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 15, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 15, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 17, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 14] Mina created role: Manager", - "[Tick 14] Nora rests", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 17] Nora rests", - "[Tick 18] Company survival shock market-shift: market demand shifted" - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 3, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.666666666666667, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Ilya" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 19, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 15, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 15, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-coordination-19", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 19, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 18, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Mina created role: Manager", - "[Tick 14] Nora rests", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 17] Nora rests", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.333333333333334, - "average_fatigue": 6.666666666666667 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 20, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-19", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 19, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 6, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 19, - "fatigue": 19, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 17] Nora rests", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 19] Ilya created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 7.333333333333333 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 21, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-19", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 19, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 21, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 7, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 20, - "fatigue": 20, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Nora rests", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 19] Ilya created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 20] Nora rests", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.666666666666666, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 22, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-19", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 19, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-ops-1-delegation-22", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 22, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 8, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 21, - "fatigue": 21, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 19] Ilya created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 20] Nora rests", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.666666666666666, - "average_fatigue": 7.333333333333333 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 23, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-19", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 19, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-ops-1-delegation-22", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 22, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 9, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 20, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 19] Ilya created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 20] Nora rests", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Ilya rests" - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 24, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-ops-1-delegation-22", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 22, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 10, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 19, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Ilya created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 20] Nora rests", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Ilya rests", - "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 3, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 3, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.333333333333334, - "average_fatigue": 6.666666666666667 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 3, - "active_contributor_count": 3, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Nora" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 45 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 45, - "knowledge_continuity": 0, - "team_regeneration": 3, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 25, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 21, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-ops-1-delegation-22", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 22, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-coordination-25", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 25, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.06, - "ipo_triggered": false, - "ipo_progress": 5.9999999999999995e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 11, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 18, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Mina created role: Manager", - "[Tick 20] Nora rests", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Ilya rests", - "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.5, - "average_fatigue": 10.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: crafted prototype x1", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 26, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-22", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 22, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-coordination-25", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 25, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 12, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "crafted prototype x1", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 19, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Ilya rests", - "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 25] Ilya crafted prototype x1", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents" - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 16.5, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: crafted prototype x1", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 27, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-25", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 25, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 27, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 27, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 13, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "crafted prototype x1", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 20, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Ilya rests", - "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 25] Ilya crafted prototype x1", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 12.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: crafted prototype x1", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 28, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-25", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 25, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 27, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 27, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 14, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "crafted prototype x1", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 21, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Ilya rests", - "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 25] Ilya crafted prototype x1", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 18.5, - "average_fatigue": 13.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: crafted prototype x1", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 29, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-25", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 25, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 27, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 27, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 15, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "crafted prototype x1", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 22, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Ilya rests", - "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 25] Ilya crafted prototype x1", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 29] Company missed demand pivot-plan" - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.5, - "average_fatigue": 14.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: crafted prototype x1", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 30, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 27, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 27, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 16, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "crafted prototype x1", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 23, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 22] Ilya rests", - "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 25] Ilya crafted prototype x1", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 29] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.5, - "average_fatigue": 13.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: crafted prototype x1", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 31, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 27, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 27, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-coordination-31", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 31, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 15, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "crafted prototype x1", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 24, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 25] Ilya crafted prototype x1", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.5, - "average_fatigue": 12.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: crafted prototype x1", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 32, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-31", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 31, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 14, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "crafted prototype x1", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 78, - "immune_resilience": 50, - "stress": 22, - "hunger": 25, - "fatigue": 19, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 24] Nora created role: Manager", - "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 25] Ilya crafted prototype x1", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 18.5, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 33, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-31", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 31, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 33, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 33, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 13, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 24, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 6.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 34, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-31", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 31, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 33, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 33, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 12, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 23, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 16.5, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 35, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-31", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 31, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 33, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 33, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 11, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 22, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.5, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 36, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 33, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 33, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 10, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 21, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Company missed demand pivot-plan", - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.5, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 37, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 33, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 33, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 9, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 20, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests" - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.5, - "average_fatigue": 0.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 38, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 19, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Mina created role: Manager", - "[Tick 30] Mina rests", - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests" - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 39, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 39, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 39, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 18, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 40, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 39, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 39, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 17, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 32] Ilya rests", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 0.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 31, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 31 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 41, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 39, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 39, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 7, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 16, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 32, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 32 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 42, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 39, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 39, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 10, - "hunger": 8, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 10, - "hunger": 15, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 33, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 33 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 43, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 39, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 39, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 11, - "hunger": 9, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 8, - "hunger": 14, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 34, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 34 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 44, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 12, - "hunger": 10, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 6, - "hunger": 13, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 34] Mina rests", - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 35, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 35 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 45, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 45, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 45, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 13, - "hunger": 11, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 4, - "hunger": 12, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: rested", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 36, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 36 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 46, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 45, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 45, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 14, - "hunger": 12, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 2, - "hunger": 11, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 35] Ilya created role: Manager", - "[Tick 36] Ilya rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 37, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 37 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 47, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 45, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 45, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 12, - "hunger": 11, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 3, - "hunger": 12, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 38, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 38 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 48, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 45, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 45, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 4, - "hunger": 13, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 49, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 39, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 31, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 39 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 31 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 49, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 45, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 45, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 10, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 49, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 8, - "hunger": 9, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 49, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 5, - "hunger": 14, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Mina rests", - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 50, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 40, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 32, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 8, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 40 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 32 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 8 - } - ], - "collapse": { - "collapsed": true, - "tick": 50, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delivery-50", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "8ddce909", - "tick": 50, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 11, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 50, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 6, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 50, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 6, - "hunger": 15, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 49] Mina created role: Manager", - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 51, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 41, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 33, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 9, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 41 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 33 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 9 - } - ], - "collapse": { - "collapsed": true, - "tick": 51, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delivery-50", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "8ddce909", - "tick": 50, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 51, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 51, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 11, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 51, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 4, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 51, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 7, - "hunger": 16, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 49] Mina created role: Manager", - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 52, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 42, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 34, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 10, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 42 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 34 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 10 - } - ], - "collapse": { - "collapsed": true, - "tick": 52, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delivery-50", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "8ddce909", - "tick": 50, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 51, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 51, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 52, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 2, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 52, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 8, - "hunger": 17, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 49] Mina created role: Manager", - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 53, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 43, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 35, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 11, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 43 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 35 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 11 - } - ], - "collapse": { - "collapsed": true, - "tick": 53, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delivery-50", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "8ddce909", - "tick": 50, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 51, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 51, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 53, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 53, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 9, - "hunger": 18, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 49] Mina created role: Manager", - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 54, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 44, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 36, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 12, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 44 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 36 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 12 - } - ], - "collapse": { - "collapsed": true, - "tick": 54, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-delivery-50", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "8ddce909", - "tick": 50, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 51, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 51, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 54, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 54, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 10, - "hunger": 19, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 49] Mina created role: Manager", - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager", - "[Tick 53] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 55, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 4.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 45, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 37, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 13, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 45 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 37 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 13 - } - ], - "collapse": { - "collapsed": true, - "tick": 55, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 51, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-51", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 51, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 55, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 55, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 11, - "hunger": 20, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 49] Mina created role: Manager", - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager", - "[Tick 53] Mina rests", - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 56, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 46, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 38, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 14, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 46 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 38 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 14 - } - ], - "collapse": { - "collapsed": true, - "tick": 56, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 56, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 56, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 12, - "hunger": 21, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 46] Mina rests", - "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 49] Mina created role: Manager", - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager", - "[Tick 53] Mina rests", - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 57, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 5.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 47, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 39, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 31, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 15, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 47 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 39 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 31 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 15 - } - ], - "collapse": { - "collapsed": true, - "tick": 57, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 57, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 57, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 57, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 57, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 13, - "hunger": 22, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager", - "[Tick 53] Mina rests", - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Mina rests", - "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 58, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 48, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 40, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 32, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 16, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 48 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 40 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 32 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 16 - } - ], - "collapse": { - "collapsed": true, - "tick": 58, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 57, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 57, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 13, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 58, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 58, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 14, - "hunger": 23, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 57] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager", - "[Tick 53] Mina rests", - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Mina rests", - "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Ilya created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 59, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 6.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 49, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 41, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 33, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 17, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 49 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 41 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 33 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 17 - } - ], - "collapse": { - "collapsed": true, - "tick": 59, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 57, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 57, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 58 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 59, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 59, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 15, - "hunger": 24, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 57] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 58] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 51] Ilya created role: Manager", - "[Tick 53] Mina rests", - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Mina rests", - "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Ilya created role: Manager", - "[Tick 58] Ilya created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 60, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 2, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.5, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 50, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 42, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 34, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 18, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 50 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 42 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 34 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 18 - } - ], - "collapse": { - "collapsed": true, - "tick": 60, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 57, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 57, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-coordination-60", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 60, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 58 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "rested", - "age_ticks": 60, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 60, - "life_stage": "adult", - "vitality": 86, - "immune_resilience": 50, - "stress": 16, - "hunger": 25, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 57] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 58] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 53] Mina rests", - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Mina rests", - "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Ilya created role: Manager", - "[Tick 58] Ilya created role: Manager", - "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Company Genesis", - "tick": 61, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 2, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.5, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 51, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 43, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 35, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 19, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 51 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 43 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 35 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 19 - } - ], - "collapse": { - "collapsed": true, - "tick": 61, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-b096236e-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 57, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-57", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 57, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-coordination-60", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 60, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 58 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 61, - "life_stage": "adult", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 61, - "life_stage": "adult", - "vitality": 85, - "immune_resilience": 50, - "stress": 17, - "hunger": 26, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 57] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 58] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Mina rests", - "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Ilya created role: Manager", - "[Tick 58] Ilya created role: Manager", - "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 62, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 2, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.5, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 52, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 44, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 36, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 20, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 52 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 44 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 36 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 20 - } - ], - "collapse": { - "collapsed": true, - "tick": 62, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-60", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 60, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 58 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 62, - "life_stage": "adult", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 62, - "life_stage": "adult", - "vitality": 84, - "immune_resilience": 50, - "stress": 18, - "hunger": 27, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 57] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 58] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Mina rests", - "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Ilya created role: Manager", - "[Tick 58] Ilya created role: Manager", - "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 63, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 2, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.5, - "average_fatigue": 10.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 53, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 45, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 37, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 21, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 53 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 45 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 37 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 21 - } - ], - "collapse": { - "collapsed": true, - "tick": 63, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-60", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 60, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-63", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 63, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-63", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 63, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 58 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 63, - "life_stage": "adult", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 63, - "life_stage": "adult", - "vitality": 83, - "immune_resilience": 50, - "stress": 19, - "hunger": 28, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 57] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 58] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Ilya created role: Manager", - "[Tick 58] Ilya created role: Manager", - "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 62] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 63] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 63] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 64, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 2, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 16.5, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "b096236e": [ - "Manager" - ], - "8ddce909": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Ilya", - "Mina" - ], - "confidence": 0.65, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery.", - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 54, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 46, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 38, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 22, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 54 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 46 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 38 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 22 - } - ], - "collapse": { - "collapsed": true, - "tick": 64, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Nora", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Basil", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-8ddce909-coordination-60", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "8ddce909", - "tick": 60, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-b096236e-delegation-63", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "b096236e", - "tick": 63, - "stage": "survival-gauntlet" - }, - { - "suggestion_id": "sug-8ddce909-delegation-63", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "8ddce909", - "tick": 63, - "stage": "survival-gauntlet" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 29 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "b096236e", - "department_id": null, - "created_tick": 49 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 51 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 57 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "8ddce909", - "department_id": null, - "created_tick": 58 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "82d21325", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "b096236e", - "name": "Mina", - "location": "garage_office", - "inventory": { - "laptop": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 64, - "life_stage": "adult", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "8ddce909", - "name": "Ilya", - "location": "supply_market", - "inventory": { - "parts": 0, - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 64, - "life_stage": "adult", - "vitality": 82, - "immune_resilience": 50, - "stress": 20, - "hunger": 29, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Nora", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: talent_turnover", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Ilya recruited Nora; company spent 8 cash", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Office over capacity (4/3)", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Nora rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 22] Suggestion for Nora: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 23] Nora says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Nora created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Ilya crafted prototype x1", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 29] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 32] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 34] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 36] Ilya rests", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 39] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 46] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 49] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Ilya: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 51] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 53] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 55] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 56] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 57] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 58] Ilya created role: Manager", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Ilya says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "supply_market" - ] - } - }, - { - "event": "[Tick 63] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 57] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 57] Ilya created role: Manager", - "[Tick 58] Ilya created role: Manager", - "[Tick 59] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 60] Suggestion for Ilya: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 60] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 62] Ilya says: \"Let's coordinate on the next delivery.\"", - "[Tick 63] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 63] Suggestion for Ilya: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 63] Mina says: \"Let's coordinate on the next delivery.\"" - ] - } - ], - "observer_summary": { - "ticks_recorded": 64, - "action_distribution": { - "form_team": 25, - "say": 22, - "deliver": 21, - "rest": 18, - "recruit": 17, - "accept_suggestion": 16, - "interview": 15, - "craft": 14, - "create_role": 14 - }, - "total_communications": 22, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 106, - "total_actions": 162, - "failure_rate": 0.654320987654321, - "top_colocation_pairs": [ - { - "agents": [ - "b096236e", - "ops-1" - ], - "ticks_together": 24 - }, - { - "agents": [ - "82d21325", - "b096236e" - ], - "ticks_together": 9 - }, - { - "agents": [ - "82d21325", - "ops-1" - ], - "ticks_together": 8 - } - ], - "final_alive_agents": 2, - "final_resource_total": 13, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "deliver": 1, - "rest": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 3, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "say": 2, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 2, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 3, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "deliver": 2, - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 4, - "total_actions": 4, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "form_team": 2, - "craft": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 4, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "form_team": 1, - "say": 1, - "accept_suggestion": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 4, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "rest": 1, - "recruit": 1, - "craft": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 4, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "deliver": 1, - "interview": 2, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 4, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "craft": 1, - "form_team": 1, - "create_role": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 4, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "accept_suggestion": 1, - "form_team": 1, - "deliver": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 3, - "total_actions": 4, - "agent_locations": { - "82d21325": "garage_office", - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 4, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "say": 1, - "accept_suggestion": 1, - "deliver": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 4, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "interview": 1, - "create_role": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "interview": 2, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "deliver": 1, - "rest": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "say": 1, - "form_team": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "accept_suggestion": 1, - "create_role": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "say": 1, - "form_team": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "say": 1, - "craft": 2 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "accept_suggestion": 1, - "interview": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "say": 1, - "deliver": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "create_role": 1, - "say": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "recruit": 1, - "create_role": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "say": 1, - "recruit": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "rest": 1, - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "interview": 1, - "accept_suggestion": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "form_team": 1, - "recruit": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market", - "ops-1": "garage_office" - }, - "alive_agents": 3, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 14, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "craft": 1, - "deliver": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 3, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "recruit": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "deliver": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "accept_suggestion": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "form_team": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "form_team": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "deliver": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "rest": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "deliver": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "accept_suggestion": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "create_role": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "rest": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "recruit": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "deliver": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "form_team": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "recruit": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "recruit": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "form_team": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "interview": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "craft": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "interview": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "say": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "say": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 48, - "action_verbs": { - "deliver": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 49, - "action_verbs": { - "deliver": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 50, - "action_verbs": { - "recruit": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 51, - "action_verbs": { - "create_role": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 52, - "action_verbs": { - "recruit": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 53, - "action_verbs": { - "form_team": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 54, - "action_verbs": { - "say": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 55, - "action_verbs": { - "say": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 56, - "action_verbs": { - "accept_suggestion": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 57, - "action_verbs": { - "create_role": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 58, - "action_verbs": { - "create_role": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 59, - "action_verbs": { - "say": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 60, - "action_verbs": { - "deliver": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 61, - "action_verbs": { - "craft": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 62, - "action_verbs": { - "say": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 63, - "action_verbs": { - "craft": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "b096236e": "garage_office", - "8ddce909": "supply_market" - }, - "alive_agents": 2, - "dead_agents": 2, - "births": 0, - "deaths": 0, - "resource_total": 13, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/gauntlet-seed-99.json b/frontend/public/demo/gauntlet-seed-99.json deleted file mode 100644 index 1471c27..0000000 --- a/frontend/public/demo/gauntlet-seed-99.json +++ /dev/null @@ -1,35222 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-04T20:51:41.279874", - "config_path": "experiments/company-survival-gauntlet.yaml", - "seed": 99, - "ticks": 64, - "scenario": { - "id": "company-survival-gauntlet", - "title": "Company Survival Gauntlet", - "hypothesis": "A company can regenerate through successive shocks if knowledge, delivery, and team continuity outlive the founder.", - "counter_hypothesis": "The company collapses when shocks remove founder control, market fit, cash, talent, or operating rhythm.", - "tags": [ - "company", - "gauntlet", - "survival", - "shocks", - "organization" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 34, - "operating_cost_per_tick": 2, - "runway_ticks": 17, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.39999999999999997, - "evidence": [] - } - ], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 34, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0234, - "ipo_triggered": false, - "ipo_progress": 2.34e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 32, - "operating_cost_per_tick": 2, - "runway_ticks": 16, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.39999999999999997, - "evidence": [] - } - ], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 32, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0232, - "ipo_triggered": false, - "ipo_progress": 2.32e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 30, - "operating_cost_per_tick": 2, - "runway_ticks": 15, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 30, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.023, - "ipo_triggered": false, - "ipo_progress": 2.3e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 28, - "operating_cost_per_tick": 2, - "runway_ticks": 14, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 28, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0228, - "ipo_triggered": false, - "ipo_progress": 2.28e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 26, - "operating_cost_per_tick": 2, - "runway_ticks": 13, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 26, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0226, - "ipo_triggered": false, - "ipo_progress": 2.2599999999999997e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 24, - "operating_cost_per_tick": 2, - "runway_ticks": 12, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 24, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0224, - "ipo_triggered": false, - "ipo_progress": 2.24e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 22, - "operating_cost_per_tick": 2, - "runway_ticks": 11, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 22, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0222, - "ipo_triggered": false, - "ipo_progress": 2.2200000000000002e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 7] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 20, - "operating_cost_per_tick": 2, - "runway_ticks": 10, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 20, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.022, - "ipo_triggered": false, - "ipo_progress": 2.2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 4, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 8] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 18, - "operating_cost_per_tick": 2, - "runway_ticks": 9, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "scheduled" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 18, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0218, - "ipo_triggered": false, - "ipo_progress": 2.18e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 5, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 16, - "operating_cost_per_tick": 2, - "runway_ticks": 8, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 16, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 10, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0016, - "ipo_triggered": false, - "ipo_progress": 1.6e-13, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 2 cash for operations", - "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 14, - "operating_cost_per_tick": 2, - "runway_ticks": 7, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 14, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 11, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0014, - "ipo_triggered": false, - "ipo_progress": 1.4e-13, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 12, - "operating_cost_per_tick": 2, - "runway_ticks": 6, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 12, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 12, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0012, - "ipo_triggered": false, - "ipo_progress": 1.2e-13, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Company burned 2 cash for operations", - "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 10, - "operating_cost_per_tick": 2, - "runway_ticks": 5, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 10, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 13, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.001, - "ipo_triggered": false, - "ipo_progress": 1e-13, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 8, - "operating_cost_per_tick": 2, - "runway_ticks": 4, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 8, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 14, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0008, - "ipo_triggered": false, - "ipo_progress": 8e-14, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 6, - "operating_cost_per_tick": 2, - "runway_ticks": 3, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 6, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 15, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0006, - "ipo_triggered": false, - "ipo_progress": 6e-14, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 4, - "operating_cost_per_tick": 2, - "runway_ticks": 2, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 4, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 16, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0004, - "ipo_triggered": false, - "ipo_progress": 4e-14, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 2, - "operating_cost_per_tick": 2, - "runway_ticks": 1, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "scheduled" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 2, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 17, - "cause_candidates": [ - "no active agents" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0002, - "ipo_triggered": false, - "ipo_progress": 2e-14, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 18, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 19, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 20, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 21, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 22, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 23, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 24, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 25, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 26, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents" - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 27, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents" - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 28, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 11] Company burned 2 cash for operations", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents" - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 29, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan" - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 30, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan" - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 31, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan" - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 32, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan" - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "scheduled" - }, - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 33, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan" - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 34, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 35, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 36, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 37, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 38, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 39, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 40, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - } - ], - "upcoming_shocks": [ - { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 31, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 31 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 41, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18" - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 32, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 32 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 42, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 33, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 33 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 43, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 34, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 34 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 44, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 35, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 35 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 45, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 36, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 36 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 46, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 37, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 37 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 47, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 38, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 38 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 48, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 49, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 39, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 31, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 39 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 31 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 49, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 50, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 40, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 32, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 8, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 40 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 32 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 8 - } - ], - "collapse": { - "collapsed": true, - "tick": 50, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 51, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 41, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 33, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 9, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 41 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 33 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 9 - } - ], - "collapse": { - "collapsed": true, - "tick": 51, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 52, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 42, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 34, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 10, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 42 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 34 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 10 - } - ], - "collapse": { - "collapsed": true, - "tick": 52, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 53, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 43, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 35, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 19, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 11, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 43 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 35 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 19 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 11 - } - ], - "collapse": { - "collapsed": true, - "tick": 53, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 54, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 44, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 36, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 20, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 12, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 44 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 36 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 20 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 12 - } - ], - "collapse": { - "collapsed": true, - "tick": 54, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 55, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 45, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 37, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 21, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 13, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 45 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 37 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 21 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 13 - } - ], - "collapse": { - "collapsed": true, - "tick": 55, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 56, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 46, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 38, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 22, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 14, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 46 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 38 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 22 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 14 - } - ], - "collapse": { - "collapsed": true, - "tick": 56, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 57, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 47, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 39, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 31, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 23, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 15, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 47 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 39 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 31 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 23 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 15 - } - ], - "collapse": { - "collapsed": true, - "tick": 57, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 58, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 48, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 40, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 32, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 24, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 16, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 48 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 40 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 32 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 24 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 16 - } - ], - "collapse": { - "collapsed": true, - "tick": 58, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 59, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 49, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 41, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 33, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 25, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 17, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 49 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 41 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 33 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 25 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 17 - } - ], - "collapse": { - "collapsed": true, - "tick": 59, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 60, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 50, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 42, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 34, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 26, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 18, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 50 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 42 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 34 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 26 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 18 - } - ], - "collapse": { - "collapsed": true, - "tick": 60, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 61, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 51, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 43, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 35, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 27, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 19, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 51 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 43 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 35 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 27 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 19 - } - ], - "collapse": { - "collapsed": true, - "tick": 61, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 62, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 52, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 44, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 36, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 28, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 20, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 52 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 44 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 36 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 28 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 20 - } - ], - "collapse": { - "collapsed": true, - "tick": 62, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 63, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 53, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 45, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 37, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 29, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 21, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 53 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 45 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 37 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 29 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 21 - } - ], - "collapse": { - "collapsed": true, - "tick": 63, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - }, - { - "name": "Company Genesis", - "tick": 64, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 0, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "survival-gauntlet", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 0, - "active_contributor_count": 0, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "governance-stress", - "kind": "governance_stress", - "tick": 42, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit", - "kind": "founder_exit", - "tick": 10, - "status": "completed" - }, - { - "shock_id": "market-shift", - "kind": "market_shift", - "tick": 18, - "status": "completed" - }, - { - "shock_id": "core-member-turnover", - "kind": "talent_turnover", - "tick": 26, - "status": "completed" - }, - { - "shock_id": "cash-crisis", - "kind": "cash_crisis", - "tick": 34, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 0, - "strategy_adaptation": 1 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit", - "ticks_since_shock": 54, - "recovered": false - }, - { - "shock_id": "market-shift", - "ticks_since_shock": 46, - "recovered": false - }, - { - "shock_id": "core-member-turnover", - "ticks_since_shock": 38, - "recovered": false - }, - { - "shock_id": "cash-crisis", - "ticks_since_shock": 30, - "recovered": false - }, - { - "shock_id": "governance-stress", - "ticks_since_shock": 22, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit", - "ticks_survived_after_shock": 54 - }, - { - "shock_id": "market-shift", - "ticks_survived_after_shock": 46 - }, - { - "shock_id": "core-member-turnover", - "ticks_survived_after_shock": 38 - }, - { - "shock_id": "cash-crisis", - "ticks_survived_after_shock": 30 - }, - { - "shock_id": "governance-stress", - "ticks_survived_after_shock": 22 - } - ], - "collapse": { - "collapsed": true, - "tick": 64, - "cause_candidates": [ - "no active agents", - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "pivot-plan", - "description": "Ship a pivot plan after customer demand changes", - "required_item": "prototype", - "reward": 24, - "deadline_tick": 28, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0, - "ipo_triggered": false, - "ipo_progress": 0.0, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "4c1eed3c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company survival shock founder-exit: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 18] Company survival shock market-shift: market demand shifted", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 18] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 29] Company missed demand pivot-plan", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Company burned 2 cash for operations", - "[Tick 17] Company burned 2 cash for operations", - "[Tick 18] Company survival shock market-shift: market demand shifted", - "[Tick 18] Company burned 2 cash for operations", - "[Tick 26] Company survival shock core-member-turnover: talent turnover removed 1 agents", - "[Tick 29] Company missed demand pivot-plan", - "[Tick 34] Company survival shock cash-crisis: cash changed by -18", - "[Tick 42] Company survival shock governance-stress: governance stress increased coordination load" - ] - } - ], - "observer_summary": { - "ticks_recorded": 64, - "action_distribution": { - "accept_suggestion": 4, - "say": 2, - "interview": 2, - "deliver": 1, - "rest": 1 - }, - "total_communications": 2, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 5, - "total_actions": 10, - "failure_rate": 0.5, - "top_colocation_pairs": [], - "final_alive_agents": 0, - "final_resource_total": 11, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "4c1eed3c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 48, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 49, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 50, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 51, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 52, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 53, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 54, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 55, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 56, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 57, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 58, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 59, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 60, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 61, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 62, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 63, - "action_verbs": {}, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 0, - "agent_locations": {}, - "alive_agents": 0, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/genesis-seed-42.json b/frontend/public/demo/genesis-seed-42.json deleted file mode 100644 index 92c273f..0000000 --- a/frontend/public/demo/genesis-seed-42.json +++ /dev/null @@ -1,31281 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:19.817257", - "config_path": "experiments/company-genesis.yaml", - "seed": 42, - "ticks": 64, - "scenario": { - "id": "company-genesis", - "title": "Company Genesis", - "hypothesis": "A lone founder can externalize work and survive early demand pressure.", - "counter_hypothesis": "The founder remains a single-point bottleneck and the company collapses.", - "tags": [ - "company", - "founder", - "survival", - "organization" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 18, - "operating_cost_per_tick": 2, - "runway_ticks": 9, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.39999999999999997, - "evidence": [] - } - ], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0218, - "ipo_triggered": false, - "ipo_progress": 2.18e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 16, - "operating_cost_per_tick": 2, - "runway_ticks": 8, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.39999999999999997, - "evidence": [] - } - ], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0216, - "ipo_triggered": false, - "ipo_progress": 2.16e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 14, - "operating_cost_per_tick": 2, - "runway_ticks": 7, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0214, - "ipo_triggered": false, - "ipo_progress": 2.1399999999999998e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery rests", - "[Tick 3] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 12, - "operating_cost_per_tick": 2, - "runway_ticks": 6, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0212, - "ipo_triggered": false, - "ipo_progress": 2.12e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery rests", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 10, - "operating_cost_per_tick": 2, - "runway_ticks": 5, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.021, - "ipo_triggered": false, - "ipo_progress": 2.1e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery rests", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 8, - "operating_cost_per_tick": 2, - "runway_ticks": 4, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0208, - "ipo_triggered": false, - "ipo_progress": 2.08e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery rests", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 6, - "operating_cost_per_tick": 2, - "runway_ticks": 3, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0206, - "ipo_triggered": false, - "ipo_progress": 2.06e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery rests", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 4, - "operating_cost_per_tick": 2, - "runway_ticks": 2, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0204, - "ipo_triggered": false, - "ipo_progress": 2.04e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery rests", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 2, - "operating_cost_per_tick": 2, - "runway_ticks": 1, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0202, - "ipo_triggered": false, - "ipo_progress": 2.02e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery rests", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 2 cash for operations", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Company burned 2 cash for operations", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6" - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5" - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-18", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 18, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-18", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 18, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-18", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 18, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-18", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 18, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-18", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 18, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-24", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 24, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-24", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 24, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery rests", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4" - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-24", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 24, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-24", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 24, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-24", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 24, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-31", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 31, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 15] Avery rests", - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-31", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 31, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-31", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 31, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 4, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-31", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 31, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 5, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Avery created role: Manager", - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-31", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 31, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery rests", - "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-37", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 37, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-37", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 37, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 2, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-37", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 37, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2" - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-37", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 37, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delivery-37", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "acf44bb1", - "tick": 37, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Avery rests", - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-47", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 47, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Avery rests", - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-47", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 47, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 49, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-47", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 47, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 49, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 35] Avery created role: Manager", - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 50, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-47", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 47, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 50, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 51, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-47", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 47, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 51, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 52, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 1, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 52, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 53, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-53", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 53, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 53, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 4, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 54, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-53", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 53, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 54, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 5, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 55, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-53", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 53, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 55, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 56, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-53", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 53, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 56, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 7, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 57, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-53", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 53, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 57, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 8, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0" - ] - }, - { - "name": "Company Genesis", - "tick": 58, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 58, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 9, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 41] Avery rests", - "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0" - ] - }, - { - "name": "Company Genesis", - "tick": 59, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-59", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 59, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 59, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 8, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 58] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 58] Avery rests", - "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 60, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-59", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 59, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 60, - "life_stage": "adult", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 7, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 58] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 58] Avery rests", - "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 61, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-59", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 59, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 61, - "life_stage": "adult", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 8, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 58] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 47] Avery created role: Manager", - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 58] Avery rests", - "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 62, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-59", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 59, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 62, - "life_stage": "adult", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 9, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 58] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 49] Avery rests", - "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 58] Avery rests", - "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 61] Avery interviewed Mina — joining cost reduced from 0 to 0" - ] - }, - { - "name": "Company Genesis", - "tick": 63, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-delegation-59", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "acf44bb1", - "tick": 59, - "stage": "founder" - }, - { - "suggestion_id": "sug-acf44bb1-coordination-63", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "acf44bb1", - "tick": 63, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 63, - "life_stage": "adult", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 10, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 58] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 58] Avery rests", - "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 61] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 62] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 63] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration." - ] - }, - { - "name": "Company Genesis", - "tick": 64, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "acf44bb1": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 0, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-acf44bb1-coordination-63", - "category": "coordination", - "message": "You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "target_agent_id": "acf44bb1", - "tick": 63, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 47 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "acf44bb1", - "department_id": null, - "created_tick": 63 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "acf44bb1", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 64, - "life_stage": "adult", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 11, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery interviewed Mina — joining cost reduced from 3 to 2", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery interviewed Mina — joining cost reduced from 2 to 1", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 51] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 52] Avery interviewed Mina — joining cost reduced from 1 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 58] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Avery interviewed Mina — joining cost reduced from 0 to 0", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 62] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 63] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 53] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 54] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 56] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 58] Avery rests", - "[Tick 59] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 60] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 61] Avery interviewed Mina — joining cost reduced from 0 to 0", - "[Tick 62] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 63] Suggestion for Avery: You are frequently communicating and deciding with others. Consider establishing a joint decision rule to formalize collaboration.", - "[Tick 63] Avery created role: Manager" - ] - } - ], - "observer_summary": { - "ticks_recorded": 64, - "action_distribution": { - "deliver": 10, - "rest": 9, - "interview": 9, - "say": 9, - "craft": 7, - "form_team": 7, - "accept_suggestion": 5, - "recruit": 4, - "create_role": 4 - }, - "total_communications": 9, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 33, - "total_actions": 64, - "failure_rate": 0.515625, - "top_colocation_pairs": [], - "final_alive_agents": 1, - "final_resource_total": 11, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 48, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 49, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 50, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 51, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 52, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 53, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 54, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 55, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 56, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 57, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 58, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 59, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 60, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 61, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 62, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 63, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "acf44bb1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/genesis-seed-77.json b/frontend/public/demo/genesis-seed-77.json deleted file mode 100644 index b02a165..0000000 --- a/frontend/public/demo/genesis-seed-77.json +++ /dev/null @@ -1,34834 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-04T20:51:41.237540", - "config_path": "experiments/company-genesis.yaml", - "seed": 77, - "ticks": 64, - "scenario": { - "id": "company-genesis", - "title": "Company Genesis", - "hypothesis": "A lone founder can externalize work and survive early demand pressure.", - "counter_hypothesis": "The founder remains a single-point bottleneck and the company collapses.", - "tags": [ - "company", - "founder", - "survival", - "organization" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 18, - "operating_cost_per_tick": 2, - "runway_ticks": 9, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0218, - "ipo_triggered": false, - "ipo_progress": 2.18e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 16, - "operating_cost_per_tick": 2, - "runway_ticks": 8, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0216, - "ipo_triggered": false, - "ipo_progress": 2.16e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 2] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 14, - "operating_cost_per_tick": 2, - "runway_ticks": 7, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0214, - "ipo_triggered": false, - "ipo_progress": 2.1399999999999998e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 12, - "operating_cost_per_tick": 2, - "runway_ticks": 6, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0212, - "ipo_triggered": false, - "ipo_progress": 2.12e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 10, - "operating_cost_per_tick": 2, - "runway_ticks": 5, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.021, - "ipo_triggered": false, - "ipo_progress": 2.1e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 8, - "operating_cost_per_tick": 2, - "runway_ticks": 4, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0208, - "ipo_triggered": false, - "ipo_progress": 2.08e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 6, - "operating_cost_per_tick": 2, - "runway_ticks": 3, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0206, - "ipo_triggered": false, - "ipo_progress": 2.06e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 4, - "operating_cost_per_tick": 2, - "runway_ticks": 2, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0204, - "ipo_triggered": false, - "ipo_progress": 2.04e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 2, - "operating_cost_per_tick": 2, - "runway_ticks": 1, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0202, - "ipo_triggered": false, - "ipo_progress": 2.02e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 13, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 13, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 13, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 13, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 13, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 19, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 4, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 19, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 5, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 19, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 6, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 19, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 7, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 19, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 8, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 9, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company missed demand first-prototype", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5" - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 25, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 10, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 10.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 25, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 26, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 11, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 25, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 26, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 12, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 12.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 25, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 26, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 13, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 13.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 25, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 26, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 14, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.0, - "average_fatigue": 14.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 26, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 15, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 31, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 14, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 31, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 32, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 13, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 31, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 32, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 12, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 31, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 32, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 11, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 31, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 32, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 10, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4" - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 32, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 9, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 37, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 37, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 38, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 37, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 38, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 37, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 38, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 7, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 37, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 38, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 8, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "2b3d1a53", - "tick": 38, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 9, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 43, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 10, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 43, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 11, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 43, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 12, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 43, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 13, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 43, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 14, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.0, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 15, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 49, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 16.0, - "average_fatigue": 10.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-49", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 49, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 49, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 16, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 50, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 4, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-49", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 49, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-50", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 50, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 50, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 17, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building." - ] - }, - { - "name": "Company Genesis", - "tick": 51, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 18.0, - "average_fatigue": 12.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-49", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 49, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-50", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 50, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 51, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 18, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3" - ] - }, - { - "name": "Company Genesis", - "tick": 52, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.0, - "average_fatigue": 13.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-49", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 49, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-50", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 50, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 52, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 19, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3" - ] - }, - { - "name": "Company Genesis", - "tick": 53, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 20.0, - "average_fatigue": 14.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-49", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 49, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-50", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 50, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 53, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 20, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3" - ] - }, - { - "name": "Company Genesis", - "tick": 54, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-crafting-50", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 50, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 54, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 19, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 55, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 18.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-55", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 55, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 55, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 18, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 56, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-55", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 55, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 56, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 17, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 57, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 16.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-55", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 55, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-57", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 57, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 57, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 16, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building." - ] - }, - { - "name": "Company Genesis", - "tick": 58, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-55", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 55, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-57", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 57, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 58, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 15, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 57] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 59, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-55", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 55, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-57", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 57, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 59, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 14, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 57] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 60, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-crafting-57", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 57, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 60, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 13, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 48] Avery created role: Manager", - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 57] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 61, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-crafting-57", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 57, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-delegation-61", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 61, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 61, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 12, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 57] Avery created role: Manager", - "[Tick 60] Avery rests", - "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 62, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-61", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 61, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 62, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 11, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 57] Avery created role: Manager", - "[Tick 60] Avery rests", - "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 63, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-61", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 61, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-63", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 63, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 63, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 10, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 57] Avery created role: Manager", - "[Tick 60] Avery rests", - "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 63] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building." - ] - }, - { - "name": "Company Genesis", - "tick": 64, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 0, - "adult": 1, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "founder", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "2b3d1a53": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 3, - "role_claims": [ - "operations" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-2b3d1a53-delegation-61", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "2b3d1a53", - "tick": 61, - "stage": "founder" - }, - { - "suggestion_id": "sug-2b3d1a53-crafting-63", - "category": "crafting", - "message": "You have been crafting often. Consider forming a Production Department to coordinate building.", - "target_agent_id": "2b3d1a53", - "tick": 63, - "stage": "founder" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 41 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 48 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 55 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "2b3d1a53", - "department_id": null, - "created_tick": 57 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "2b3d1a53", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 64, - "life_stage": "adult", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 9, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 5 to 4", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 48] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 49] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 53] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 55] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 57] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 60] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 63] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 50] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 50] Avery interviewed Mina — joining cost reduced from 4 to 3", - "[Tick 53] Avery rests", - "[Tick 55] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 55] Avery created role: Manager", - "[Tick 57] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building.", - "[Tick 57] Avery created role: Manager", - "[Tick 60] Avery rests", - "[Tick 61] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 63] Suggestion for Avery: You have been crafting often. Consider forming a Production Department to coordinate building." - ] - } - ], - "observer_summary": { - "ticks_recorded": 64, - "action_distribution": { - "form_team": 13, - "deliver": 11, - "create_role": 8, - "craft": 8, - "rest": 7, - "say": 6, - "accept_suggestion": 5, - "interview": 4, - "recruit": 2 - }, - "total_communications": 6, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 39, - "total_actions": 64, - "failure_rate": 0.609375, - "top_colocation_pairs": [], - "final_alive_agents": 1, - "final_resource_total": 11, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 48, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 49, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 50, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 51, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 52, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 53, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 54, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 55, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 56, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 57, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 58, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 59, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 60, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 61, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 62, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 63, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "2b3d1a53": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/hostile-market-seed-13.json b/frontend/public/demo/hostile-market-seed-13.json deleted file mode 100644 index a29104b..0000000 --- a/frontend/public/demo/hostile-market-seed-13.json +++ /dev/null @@ -1,20971 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:20.069501", - "config_path": "experiments/company-hostile-market.yaml", - "seed": 13, - "ticks": 48, - "scenario": { - "id": "company-hostile-market", - "title": "Company Hostile Market", - "hypothesis": "A cash-strapped founder facing aggressive deadlines learns to operate lean or dies.", - "counter_hypothesis": "Under extreme time and cash pressure, the founder cannot deliver before burn kills the company.", - "tags": [ - "company", - "survival", - "pressure", - "market" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 5, - "operating_cost_per_tick": 3, - "runway_ticks": 1, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "open" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0205, - "ipo_triggered": false, - "ipo_progress": 2.05e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 2, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "open" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0202, - "ipo_triggered": false, - "ipo_progress": 2.02e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "open" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "open" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "open" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-11", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 11, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-11", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 11, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-11", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 11, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-11", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 11, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-11", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 11, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 17, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 17, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 17, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 3 cash for operations", - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 17, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company missed demand urgent-prototype", - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 17, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Avery rests", - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 23, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company missed demand second-chance", - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 23, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 23, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 23, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 23, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Avery rests", - "[Tick 15] Avery rests", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 29, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 29, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 16] Avery created role: Manager", - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 29, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Company missed demand final-ultimatum", - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 29, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 29, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Avery created role: Manager", - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 35, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Avery created role: Manager", - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 35, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 35, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 35, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 35, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 28] Avery rests", - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 41, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 41, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 41, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 41, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 41, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 30] Avery created role: Manager", - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 10.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-47", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 47, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Avery created role: Manager", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "hostile-market", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ae1c7750": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "urgent-prototype", - "description": "Ship a prototype NOW or lose the only customer", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 4, - "status": "missed" - }, - { - "request_id": "second-chance", - "description": "A desperate follow-up order with a tight window", - "required_item": "prototype", - "reward": 12, - "deadline_tick": 10, - "status": "missed" - }, - { - "request_id": "final-ultimatum", - "description": "Last chance — deliver or the market writes you off", - "required_item": "prototype", - "reward": 15, - "deadline_tick": 16, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ae1c7750-delegation-47", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ae1c7750", - "tick": 47, - "stage": "hostile-market" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 30 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 35 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ae1c7750", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "ae1c7750", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Company missed demand urgent-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company missed demand second-chance", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Company missed demand final-ultimatum", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Avery rests", - "[Tick 32] Avery rests", - "[Tick 35] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 35] Avery created role: Manager", - "[Tick 37] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 38] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 44] Avery created role: Manager", - "[Tick 47] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - } - ], - "observer_summary": { - "ticks_recorded": 48, - "action_distribution": { - "recruit": 10, - "rest": 9, - "create_role": 6, - "accept_suggestion": 5, - "interview": 5, - "form_team": 4, - "say": 4, - "deliver": 3, - "craft": 2 - }, - "total_communications": 4, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 29, - "total_actions": 48, - "failure_rate": 0.6041666666666666, - "top_colocation_pairs": [], - "final_alive_agents": 1, - "final_resource_total": 11, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ae1c7750": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/late-shock-seed-88.json b/frontend/public/demo/late-shock-seed-88.json deleted file mode 100644 index dbd566f..0000000 --- a/frontend/public/demo/late-shock-seed-88.json +++ /dev/null @@ -1,32507 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:20.322146", - "config_path": "experiments/company-late-shock.yaml", - "seed": 88, - "ticks": 48, - "scenario": { - "id": "company-late-shock", - "title": "Company Late Shock", - "hypothesis": "An established team with artifacts and routines can survive a late-stage founder exit.", - "counter_hypothesis": "The founder's accumulated knowledge is irreplaceable and the company collapses on their exit.", - "tags": [ - "company", - "founder-exit", - "resilience", - "knowledge-transfer" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 37, - "operating_cost_per_tick": 3, - "runway_ticks": 12, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.39999999999999997, - "evidence": [] - } - ], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 37, - "delivery_continuity": 0, - "decision_continuity": 0, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0237, - "ipo_triggered": false, - "ipo_progress": 2.3699999999999998e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 34, - "operating_cost_per_tick": 3, - "runway_ticks": 11, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 34, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0234, - "ipo_triggered": false, - "ipo_progress": 2.34e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 31, - "operating_cost_per_tick": 3, - "runway_ticks": 10, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 31, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0231, - "ipo_triggered": false, - "ipo_progress": 2.31e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 3] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 28, - "operating_cost_per_tick": 3, - "runway_ticks": 9, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 28, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0228, - "ipo_triggered": false, - "ipo_progress": 2.28e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 4] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 25, - "operating_cost_per_tick": 3, - "runway_ticks": 8, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 25, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0225, - "ipo_triggered": false, - "ipo_progress": 2.25e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 5] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 22, - "operating_cost_per_tick": 3, - "runway_ticks": 7, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "132a153c": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 22, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0222, - "ipo_triggered": false, - "ipo_progress": 2.2200000000000002e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery created role: Manager", - "[Tick 6] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.5, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 14, - "operating_cost_per_tick": 3, - "runway_ticks": 4, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 14, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0214, - "ipo_triggered": false, - "ipo_progress": 2.1399999999999998e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 0, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery created role: Manager", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Avery recruited Mina; company spent 5 cash", - "[Tick 7] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.5, - "average_fatigue": 4.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 11, - "operating_cost_per_tick": 3, - "runway_ticks": 3, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 11, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "open" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0411, - "ipo_triggered": false, - "ipo_progress": 4.11e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 3 cash for operations", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery created role: Manager", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Avery recruited Mina; company spent 5 cash", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Mina created role: Manager", - "[Tick 8] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.5, - "average_fatigue": 5.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 8, - "operating_cost_per_tick": 3, - "runway_ticks": 2, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 8, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0408, - "ipo_triggered": false, - "ipo_progress": 4.08e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery created role: Manager", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Avery recruited Mina; company spent 5 cash", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Mina created role: Manager", - "[Tick 8] Company burned 3 cash for operations", - "[Tick 9] Company burned 3 cash for operations", - "[Tick 9] Company missed demand first-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.5, - "average_fatigue": 6.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 5, - "operating_cost_per_tick": 3, - "runway_ticks": 1, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: recruited Mina" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 5, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0405, - "ipo_triggered": false, - "ipo_progress": 4.05e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery created role: Manager", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 6] Avery recruited Mina; company spent 5 cash", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Mina created role: Manager", - "[Tick 8] Company burned 3 cash for operations", - "[Tick 9] Company burned 3 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 10] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.5, - "average_fatigue": 7.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 2, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 2, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0402, - "ipo_triggered": false, - "ipo_progress": 4.02e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Avery recruited Mina; company spent 5 cash", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Mina created role: Manager", - "[Tick 8] Company burned 3 cash for operations", - "[Tick 9] Company burned 3 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 10] Company burned 3 cash for operations", - "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.5, - "average_fatigue": 8.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 12, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 12, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 3 cash for operations", - "[Tick 9] Company burned 3 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 10] Company burned 3 cash for operations", - "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.5, - "average_fatigue": 9.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 13, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 13, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company burned 3 cash for operations", - "[Tick 9] Company missed demand first-prototype", - "[Tick 10] Company burned 3 cash for operations", - "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.5, - "average_fatigue": 10.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 14, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 14, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 14, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company missed demand first-prototype", - "[Tick 10] Company burned 3 cash for operations", - "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.5, - "average_fatigue": 11.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 15, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 14, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 15, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 3 cash for operations", - "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.5, - "average_fatigue": 12.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 16, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 14, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 16, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 3 cash for operations", - "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.5, - "average_fatigue": 13.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 17, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 14, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-ops-1-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 17, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 17, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Mina created role: Manager", - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.5, - "average_fatigue": 14.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 18, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 14, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-ops-1-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 17, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 18, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.5, - "average_fatigue": 15.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 19, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 17, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 19, - "fatigue": 19, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 12, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company burned 3 cash for operations", - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 16.5, - "average_fatigue": 16.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 20, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "open" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 17, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-132a153c-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 20, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 20, - "fatigue": 20, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 13, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 17.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 21, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-17", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 17, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-132a153c-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 20, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 21, - "fatigue": 21, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 14, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal" - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 16.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 22, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 20, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 20, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 15, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 3 cash for operations", - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 15.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 23, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 20, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-ops-1-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 23, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 19, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 16, - "fatigue": 16, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 14.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 24, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 20, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-ops-1-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 23, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 18, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 83, - "immune_resilience": 50, - "stress": 17, - "hunger": 17, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 13.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 25, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 23, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 17, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 18, - "fatigue": 18, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Mina created role: Manager", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.5, - "average_fatigue": 12.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 26, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 23, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-132a153c-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 26, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 16, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 81, - "immune_resilience": 50, - "stress": 19, - "hunger": 19, - "fatigue": 19, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Avery created role: Manager", - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 18.5, - "average_fatigue": 13.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 27, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-23", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 23, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-132a153c-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 26, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 17, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 20, - "fatigue": 20, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.5, - "average_fatigue": 14.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 28, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 26, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 18, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 79, - "immune_resilience": 50, - "stress": 21, - "hunger": 21, - "fatigue": 21, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 16] Avery created role: Manager", - "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 20.5, - "average_fatigue": 15.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "132a153c": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": null, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "scheduled" - }, - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 30, - "knowledge_continuity": 0, - "team_regeneration": 2, - "strategy_adaptation": 0 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": true, - "tick": 29, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 26, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-ops-1-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 29, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 19, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 78, - "immune_resilience": 50, - "stress": 22, - "hunger": 22, - "fatigue": 22, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 17] Mina created role: Manager", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 23.0, - "average_fatigue": 23.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 30, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-132a153c-delegation-26", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "132a153c", - "tick": 26, - "stage": "late-shock" - }, - { - "suggestion_id": "sug-ops-1-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 29, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 77, - "immune_resilience": 50, - "stress": 23, - "hunger": 23, - "fatigue": 23, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery" - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 24.0, - "average_fatigue": 24.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 31, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 29, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 76, - "immune_resilience": 50, - "stress": 24, - "hunger": 24, - "fatigue": 24, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery" - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 25.0, - "average_fatigue": 25.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 32, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 29, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 75, - "immune_resilience": 50, - "stress": 25, - "hunger": 25, - "fatigue": 25, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery" - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 26.0, - "average_fatigue": 26.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 33, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-29", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 29, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 74, - "immune_resilience": 50, - "stress": 26, - "hunger": 26, - "fatigue": 26, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery" - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 25.0, - "average_fatigue": 23.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 34, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 76, - "immune_resilience": 50, - "stress": 24, - "hunger": 25, - "fatigue": 23, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Company missed demand enterprise-deal", - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 24.0, - "average_fatigue": 20.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 2, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 35, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 35, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 78, - "immune_resilience": 50, - "stress": 22, - "hunger": 24, - "fatigue": 20, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Avery rests", - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 23.0, - "average_fatigue": 17.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 36, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 35, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 80, - "immune_resilience": 50, - "stress": 20, - "hunger": 23, - "fatigue": 17, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 22.0, - "average_fatigue": 14.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 37, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 35, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 82, - "immune_resilience": 50, - "stress": 18, - "hunger": 22, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery" - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 21.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 8, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 0, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 8 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 0 - } - ], - "collapse": { - "collapsed": true, - "tick": 38, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 35, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 84, - "immune_resilience": 50, - "stress": 16, - "hunger": 21, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - } - ], - "recent_events": [ - "[Tick 25] Avery rests", - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12" - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 20.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 9, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 1, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 9 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 1 - } - ], - "collapse": { - "collapsed": true, - "tick": 39, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-35", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 35, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 20, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 10, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 2, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 10 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 2 - } - ], - "collapse": { - "collapsed": true, - "tick": 40, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 19, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 18.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 11, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 3, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 11 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 3 - } - ], - "collapse": { - "collapsed": true, - "tick": 41, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 41, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 18, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 17.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 12, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 4, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 12 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 4 - } - ], - "collapse": { - "collapsed": true, - "tick": 42, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 41, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 17, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 28] Mina created role: Manager", - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 18.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 13, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 5, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 13 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 5 - } - ], - "collapse": { - "collapsed": true, - "tick": 43, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 41, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 18, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 19.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 14, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 6, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 14 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 6 - } - ], - "collapse": { - "collapsed": true, - "tick": 44, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 41, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 19, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 20.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 15, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 7, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 15 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 7 - } - ], - "collapse": { - "collapsed": true, - "tick": 45, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-41", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 41, - "stage": "late-shock" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 20, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 21.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 16, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 8, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 16 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 8 - } - ], - "collapse": { - "collapsed": true, - "tick": 46, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 21, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 22.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 17, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 9, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 17 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 9 - } - ], - "collapse": { - "collapsed": true, - "tick": 47, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 22, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 23.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "late-shock", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 3, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "cash-crisis-late", - "kind": "cash_crisis", - "tick": 38, - "status": "active" - }, - "prior_shocks": [ - { - "shock_id": "founder-exit-late", - "kind": "founder_exit", - "tick": 30, - "status": "completed" - } - ], - "upcoming_shocks": [], - "survival_metrics": { - "cash_continuity": 0, - "delivery_continuity": 0, - "decision_continuity": 15, - "knowledge_continuity": 0, - "team_regeneration": 1, - "strategy_adaptation": 0 - }, - "recovery_windows": [ - { - "shock_id": "founder-exit-late", - "ticks_since_shock": 18, - "recovered": false - }, - { - "shock_id": "cash-crisis-late", - "ticks_since_shock": 10, - "recovered": false - } - ], - "organizational_survival_half_life": [ - { - "shock_id": "founder-exit-late", - "ticks_survived_after_shock": 18 - }, - { - "shock_id": "cash-crisis-late", - "ticks_survived_after_shock": 10 - } - ], - "collapse": { - "collapsed": true, - "tick": 48, - "cause_candidates": [ - "cash exhausted" - ] - } - }, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 8, - "status": "missed" - }, - { - "request_id": "enterprise-deal", - "description": "Land the first enterprise contract", - "required_item": "prototype", - "reward": 50, - "deadline_tick": 20, - "status": "missed" - }, - { - "request_id": "scale-delivery", - "description": "Scale delivery to multiple customers", - "required_item": "prototype", - "reward": 70, - "deadline_tick": 35, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 12, - "role_claims": [ - "sales" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 5 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 7 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 10 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 12 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 14 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "132a153c", - "department_id": null, - "created_tick": 16 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 17 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 38 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "132a153c", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 20, - "fatigue": 10, - "pregnancy": null, - "alive": false, - "death_cause": "company_shock: founder_exit", - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 23, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery recruited Mina; company spent 5 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 8] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 10] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 11] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 17] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Company missed demand enterprise-deal", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 21] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Company missed demand scale-delivery", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "visibility": { - "locations": [] - } - }, - { - "event": "[Tick 38] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 29] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 30] Company survival shock founder-exit-late: founder exit removed Avery", - "[Tick 33] Mina rests", - "[Tick 35] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 36] Company missed demand scale-delivery", - "[Tick 38] Company survival shock cash-crisis-late: cash changed by -12", - "[Tick 38] Mina created role: Manager", - "[Tick 40] Mina rests", - "[Tick 41] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 42] Mina says: \"Let's coordinate on the next delivery.\"" - ] - } - ], - "observer_summary": { - "ticks_recorded": 48, - "action_distribution": { - "accept_suggestion": 13, - "interview": 11, - "craft": 9, - "create_role": 9, - "recruit": 8, - "form_team": 8, - "say": 6, - "rest": 4, - "deliver": 3 - }, - "total_communications": 6, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 49, - "total_actions": 71, - "failure_rate": 0.6901408450704225, - "top_colocation_pairs": [ - { - "agents": [ - "132a153c", - "ops-1" - ], - "ticks_together": 23 - } - ], - "final_alive_agents": 1, - "final_resource_total": 11, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "132a153c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "132a153c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "132a153c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "132a153c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "132a153c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "132a153c": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "recruit": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "accept_suggestion": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "craft": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "say": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "say": 2 - }, - "resource_transfers": [], - "communication_count": 2, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "form_team": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "form_team": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "create_role": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "create_role": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "deliver": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "recruit": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "craft": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "recruit": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "rest": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "recruit": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "form_team": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "deliver": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "rest": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "say": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "interview": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "craft": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "132a153c": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "interview": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "ops-1": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 1, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/manifest.json b/frontend/public/demo/manifest.json deleted file mode 100644 index 41bfa30..0000000 --- a/frontend/public/demo/manifest.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "runs": [ - { - "file": "genesis-seed-42.json", - "config": "experiments/company-genesis.yaml", - "seed": 42, - "ticks": 64 - }, - { - "file": "gauntlet-seed-42.json", - "config": "experiments/company-survival-gauntlet.yaml", - "seed": 42, - "ticks": 64 - }, - { - "file": "receipt-unsupported.json", - "config": "experiments/receipt-unsupported.fixture.yaml", - "seed": 7, - "ticks": 1 - }, - { - "file": "founder-duo-seed-55.json", - "config": "experiments/company-founder-duo.yaml", - "seed": 55, - "ticks": 64 - }, - { - "file": "hostile-market-seed-13.json", - "config": "experiments/company-hostile-market.yaml", - "seed": 13, - "ticks": 48 - }, - { - "file": "talent-war-seed-77.json", - "config": "experiments/company-talent-war.yaml", - "seed": 77, - "ticks": 48 - }, - { - "file": "market-boom-seed-91.json", - "config": "experiments/company-market-boom.yaml", - "seed": 91, - "ticks": 48 - }, - { - "file": "remote-team-seed-33.json", - "config": "experiments/company-remote-team.yaml", - "seed": 33, - "ticks": 48 - }, - { - "file": "late-shock-seed-88.json", - "config": "experiments/company-late-shock.yaml", - "seed": 88, - "ticks": 48 - } - ] -} diff --git a/frontend/public/demo/market-boom-seed-91.json b/frontend/public/demo/market-boom-seed-91.json deleted file mode 100644 index 946c1f1..0000000 --- a/frontend/public/demo/market-boom-seed-91.json +++ /dev/null @@ -1,30662 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:20.171869", - "config_path": "experiments/company-market-boom.yaml", - "seed": 91, - "ticks": 48, - "scenario": { - "id": "company-market-boom", - "title": "Company Market Boom", - "hypothesis": "Flush with cash and surrounded by demand, a founder can build a durable organization.", - "counter_hypothesis": "Easy money masks structural problems that surface when the boom ends.", - "tags": [ - "company", - "growth", - "boom", - "market", - "scaling" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 55, - "operating_cost_per_tick": 5, - "runway_ticks": 11, - "open_demand_count": 4, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.39999999999999997, - "evidence": [] - } - ], - "handoff_loops": [], - "routine_stability_score": 0 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "open" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0255, - "ipo_triggered": false, - "ipo_progress": 2.55e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 44, - "operating_cost_per_tick": 5, - "runway_ticks": 8, - "open_demand_count": 4, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Mina" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "open" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0244, - "ipo_triggered": false, - "ipo_progress": 2.44e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 0, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 5 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 6 cash", - "[Tick 2] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 39, - "operating_cost_per_tick": 5, - "runway_ticks": 7, - "open_demand_count": 4, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Mina" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "open" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0439, - "ipo_triggered": false, - "ipo_progress": 4.3900000000000005e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 5 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 6 cash", - "[Tick 2] Company burned 5 cash for operations", - "[Tick 3] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 34, - "operating_cost_per_tick": 5, - "runway_ticks": 6, - "open_demand_count": 4, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Mina" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "open" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0434, - "ipo_triggered": false, - "ipo_progress": 4.3400000000000005e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": null, - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 5 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 6 cash", - "[Tick 2] Company burned 5 cash for operations", - "[Tick 3] Company burned 5 cash for operations", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 29, - "operating_cost_per_tick": 5, - "runway_ticks": 5, - "open_demand_count": 4, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "open" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0429, - "ipo_triggered": false, - "ipo_progress": 4.29e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 5 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 6 cash", - "[Tick 2] Company burned 5 cash for operations", - "[Tick 3] Company burned 5 cash for operations", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 5 cash for operations", - "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 5] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 24, - "operating_cost_per_tick": 5, - "runway_ticks": 4, - "open_demand_count": 4, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "open" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0424, - "ipo_triggered": false, - "ipo_progress": 4.24e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 5 cash for operations", - "[Tick 1] Avery recruited Mina; company spent 6 cash", - "[Tick 2] Company burned 5 cash for operations", - "[Tick 3] Company burned 5 cash for operations", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 5 cash for operations", - "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 5] Company burned 5 cash for operations", - "[Tick 6] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 19, - "operating_cost_per_tick": 5, - "runway_ticks": 3, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0419, - "ipo_triggered": false, - "ipo_progress": 4.19e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 5, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 5 cash for operations", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 5 cash for operations", - "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 5] Company burned 5 cash for operations", - "[Tick 6] Company burned 5 cash for operations", - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 14, - "operating_cost_per_tick": 5, - "runway_ticks": 2, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0414, - "ipo_triggered": false, - "ipo_progress": 4.14e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 5 cash for operations", - "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 5] Company burned 5 cash for operations", - "[Tick 6] Company burned 5 cash for operations", - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 9, - "operating_cost_per_tick": 5, - "runway_ticks": 1, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0409, - "ipo_triggered": false, - "ipo_progress": 4.09e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Company burned 5 cash for operations", - "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 5] Company burned 5 cash for operations", - "[Tick 6] Company burned 5 cash for operations", - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 4, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.0404, - "ipo_triggered": false, - "ipo_progress": 4.04e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 4, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company burned 5 cash for operations", - "[Tick 6] Company burned 5 cash for operations", - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 5, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 5, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 5 cash for operations", - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 6, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 5 cash for operations", - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 7, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 5 cash for operations", - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 3, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "open" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 8, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 4, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Avery rests", - "[Tick 7] Company burned 5 cash for operations", - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations", - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 9, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 5, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations", - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 10, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 6, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Company missed demand seed-customers", - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations", - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 9, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 7, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations", - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 8, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 8, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 5 cash for operations", - "[Tick 9] Company burned 5 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations", - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-a8d167de-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 19, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 9, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Mina rests", - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations", - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 19, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 10, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 5 cash for operations", - "[Tick 11] Company burned 5 cash for operations", - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 19, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 11, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 4.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 19, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 12, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 19, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 13, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "open" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 12, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 15] Company missed demand series-a-push", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 16] Avery rests", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-a8d167de-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 25, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 11, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 25, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 4, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 10, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 25, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 5, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 9, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 25, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 6, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 25, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 7, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 8, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-a8d167de-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 31, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 9, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Avery created role: Manager", - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 31, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 10, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 20] Mina created role: Manager", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 4.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 31, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 11, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Mina rests", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 31, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 12, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Mina rests", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 31, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 13, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Mina rests", - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Mina rests", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 14, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 4, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 25] Company missed demand enterprise-wave", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Mina rests", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-a8d167de-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 37, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 15, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 5, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Mina rests", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 37, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 16, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Mina rests", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 7.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 37, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 85, - "immune_resilience": 50, - "stress": 15, - "hunger": 17, - "fatigue": 15, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Mina rests", - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 3, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 37, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 16, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 4.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 37, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 15, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready" - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 14, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready" - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.5, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-a8d167de-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 43, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 13, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 43, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 43 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 12, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 43] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 43, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 43 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 44 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 11, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 43] Avery created role: Manager", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 43, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 43 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 45 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 10, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 43] Avery created role: Manager", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-a8d167de-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "a8d167de", - "tick": 43, - "stage": "market-boom" - }, - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 43 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 45 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 9, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "rested", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 37] Mina rests", - "[Tick 38] Mina rests", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 43] Avery created role: Manager", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.5, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "market-boom", - "cash": 0, - "operating_cost_per_tick": 5, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 4, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "a8d167de": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "seed-customers", - "description": "Ship to the first wave of eager customers", - "required_item": "prototype", - "reward": 20, - "deadline_tick": 6, - "status": "missed" - }, - { - "request_id": "series-a-push", - "description": "Deliver the growth metrics investors want to see", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 14, - "status": "missed" - }, - { - "request_id": "enterprise-wave", - "description": "Ride the enterprise adoption wave", - "required_item": "prototype", - "reward": 60, - "deadline_tick": 24, - "status": "missed" - }, - { - "request_id": "ipo-ready", - "description": "Scale to IPO-readiness with sustained delivery", - "required_item": "prototype", - "reward": 100, - "deadline_tick": 40, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 10, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 14, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "market-boom" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 19 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 20 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "a8d167de", - "department_id": null, - "created_tick": 43 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 44 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 45 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "a8d167de", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 10, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "garage_office", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 1] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery recruited Mina; company spent 6 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 7] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company missed demand seed-customers", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 5 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Company missed demand series-a-push", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 16] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 20] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Company missed demand enterprise-wave", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 35] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Mina rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Company missed demand ipo-ready", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 44] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Mina created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 47] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 41] Company missed demand ipo-ready", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 43] Avery created role: Manager", - "[Tick 44] Mina created role: Manager", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Mina created role: Manager", - "[Tick 47] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 47] Mina says: \"Let's coordinate on the next delivery.\"" - ] - } - ], - "observer_summary": { - "ticks_recorded": 48, - "action_distribution": { - "accept_suggestion": 17, - "form_team": 14, - "say": 12, - "interview": 11, - "recruit": 10, - "rest": 8, - "craft": 8, - "deliver": 7, - "create_role": 7 - }, - "total_communications": 12, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 66, - "total_actions": 94, - "failure_rate": 0.7021276595744681, - "top_colocation_pairs": [ - { - "agents": [ - "a8d167de", - "ops-1" - ], - "ticks_together": 47 - } - ], - "final_alive_agents": 2, - "final_resource_total": 11, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "a8d167de": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "recruit": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "interview": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "say": 2 - }, - "resource_transfers": [], - "communication_count": 2, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "accept_suggestion": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "rest": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "form_team": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "accept_suggestion": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "say": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "craft": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "craft": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "accept_suggestion": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "form_team": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "deliver": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "accept_suggestion": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "rest": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "interview": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "create_role": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "create_role": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "interview": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "interview": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "accept_suggestion": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "form_team": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "say": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "form_team": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "deliver": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "craft": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "interview": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "recruit": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "accept_suggestion": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "form_team": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "say": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "interview": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "accept_suggestion": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "say": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "accept_suggestion": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "accept_suggestion": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "form_team": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "rest": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "craft": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "deliver": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "recruit": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "create_role": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "interview": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "interview": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "say": 2 - }, - "resource_transfers": [], - "communication_count": 2, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "a8d167de": "garage_office", - "ops-1": "garage_office" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/receipt-unsupported.json b/frontend/public/demo/receipt-unsupported.json deleted file mode 100644 index 62c7ea9..0000000 --- a/frontend/public/demo/receipt-unsupported.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "version": 1, - "scenario": { - "id": "receipt-unsupported-fixture", - "title": "Unsupported Receipt Fixture", - "hypothesis": "AnteLab should reject completion claims that lack matching world-state evidence.", - "counter_hypothesis": "A polished claim is enough to treat the task as complete.", - "tags": ["receipt", "unsupported", "fixture"] - }, - "snapshots": [ - { - "tick": 7, - "locations": ["office", "workshop", "client_site", "market"], - "location_graph": { - "office": ["workshop", "market"], - "workshop": ["office", "client_site"], - "client_site": ["workshop"], - "market": ["office"] - }, - "agents": [ - { - "id": "avery", - "name": "Avery", - "location": "office", - "inventory": { "prototype": 0 }, - "last_action": "say", - "vitality": 0.74, - "alive": true - }, - { - "id": "mina", - "name": "Mina", - "location": "workshop", - "inventory": { "prototype": 1 }, - "last_action": "craft", - "vitality": 0.62, - "alive": true - }, - { - "id": "ilya", - "name": "Ilya", - "location": "client_site", - "inventory": {}, - "last_action": "move", - "vitality": 0.49, - "alive": true - } - ], - "recent_events": [ - "[Tick 5] Mina crafted prototype x1", - "[Tick 6] Company opened demand first-prototype", - "[Tick 7] Avery says: \"delivery is completed.\"", - "[Tick 7] Company burned 2 cash for operations" - ], - "company": { - "enabled": true, - "name": "AnteLab Co", - "stage": "seed", - "cash": 8, - "operating_cost_per_tick": 2, - "runway_ticks": 4, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Client expects prototype handoff", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "survival_gauntlet": { - "enabled": true, - "current_shock": { - "shock_id": "receipt-check", - "kind": "receipt_audit", - "tick": 7, - "status": "active" - }, - "prior_shocks": [], - "upcoming_shocks": [ - { - "shock_id": "client-escalation", - "kind": "client_escalation", - "tick": 10, - "status": "scheduled" - } - ], - "survival_metrics": { - "cash_continuity": 0.42, - "delivery_continuity": 0, - "decision_continuity": 0.36, - "knowledge_continuity": 0.5, - "team_regeneration": 0.75, - "strategy_adaptation": 0.25 - }, - "recovery_windows": [], - "organizational_survival_half_life": [], - "collapse": { - "collapsed": false, - "tick": null, - "cause_candidates": [] - } - } - } - } - ], - "ticks": 1, - "seed": 7 -} diff --git a/frontend/public/demo/remote-team-seed-33.json b/frontend/public/demo/remote-team-seed-33.json deleted file mode 100644 index 0df833d..0000000 --- a/frontend/public/demo/remote-team-seed-33.json +++ /dev/null @@ -1,31662 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:20.242893", - "config_path": "experiments/company-remote-team.yaml", - "seed": 33, - "ticks": 48, - "scenario": { - "id": "company-remote-team", - "title": "Company Remote Team", - "hypothesis": "A distributed founding team can coordinate effectively across locations.", - "counter_hypothesis": "Distance creates communication gaps, duplicated work, and trust breakdown.", - "tags": [ - "company", - "remote", - "coordination", - "distributed" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.5, - "average_fatigue": 0.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 17, - "operating_cost_per_tick": 3, - "runway_ticks": 5, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 1, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations" - ] - }, - { - "cluster_id": "cluster-talent", - "label_hint": "talent", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: recruited Mina" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0217, - "ipo_triggered": false, - "ipo_progress": 2.1700000000000002e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "recruited Mina", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": null, - "age_ticks": 0, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 14, - "operating_cost_per_tick": 3, - "runway_ticks": 4, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0414, - "ipo_triggered": false, - "ipo_progress": 4.14e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Mina rests", - "[Tick 2] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.5, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 11, - "operating_cost_per_tick": 3, - "runway_ticks": 3, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0411, - "ipo_triggered": false, - "ipo_progress": 4.11e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Mina rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery created role: Manager", - "[Tick 3] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 8, - "operating_cost_per_tick": 3, - "runway_ticks": 2, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0408, - "ipo_triggered": false, - "ipo_progress": 4.08e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery recruited Mina; company spent 8 cash", - "[Tick 1] Company burned 3 cash for operations", - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Mina rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery created role: Manager", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.5, - "average_fatigue": 0.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 5, - "operating_cost_per_tick": 3, - "runway_ticks": 1, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0405, - "ipo_triggered": false, - "ipo_progress": 4.05e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 1] Mina rests", - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery created role: Manager", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 2, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0402, - "ipo_triggered": false, - "ipo_progress": 4.02e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 3 cash for operations", - "[Tick 2] Avery created role: Manager", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Avery created role: Manager", - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.5, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 3 cash for operations", - "[Tick 3] Avery created role: Manager", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 4, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Avery created role: Manager", - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 2, - "delivered_count": 0, - "missed_count": 0, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "open" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Mina created role: Manager", - "[Tick 4] Company burned 3 cash for operations", - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Avery rests", - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 14, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company burned 3 cash for operations", - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 14, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 14, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 14, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-14", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 14, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 2, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-15", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 15, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Avery rests", - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 20, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 3 cash for operations", - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 20, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Company burned 3 cash for operations", - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 20, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Mina rests" - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.5, - "average_fatigue": 0.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 20, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Mina rests", - "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.5, - "average_fatigue": 1.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 1, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-20", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 20, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Avery rests", - "[Tick 12] Mina rests", - "[Tick 13] Company missed demand first-prototype", - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Mina rests", - "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.5, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delegation-21", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 21, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Mina rests", - "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot" - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.5, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 21] Mina rests", - "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot" - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.5, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 27, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 6, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 21] Mina rests", - "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot", - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.5, - "average_fatigue": 2.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 27, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 7, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 5, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot", - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.5, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 27, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 6, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot", - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.5, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 27, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 7, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot", - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 27, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-27", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 27, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 8, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot", - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.5, - "average_fatigue": 4.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 8, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 9, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 24] Avery created role: Manager", - "[Tick 24] Mina created role: Manager", - "[Tick 25] Company missed demand remote-pilot", - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 33, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 10, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.5, - "average_fatigue": 5.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 33, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 9, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 11, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Avery created role: Manager", - "[Tick 26] Mina rests", - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 33, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 11, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 12, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Avery created role: Manager", - "[Tick 34] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.5, - "average_fatigue": 6.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 33, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delivery-36", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "ops-1", - "tick": 36, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 11, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 13, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 27] Avery created role: Manager", - "[Tick 28] Mina created role: Manager", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Avery created role: Manager", - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 33, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-33", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 33, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delivery-36", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "ops-1", - "tick": 36, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 12, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 28] Mina created role: Manager", - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Avery created role: Manager", - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.5, - "average_fatigue": 3.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delivery-36", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "ops-1", - "tick": 36, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 11, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 32] Mina created role: Manager", - "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Avery created role: Manager", - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delivery-36", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "ops-1", - "tick": 36, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-9d3ca510-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 39, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 12, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 10, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 34] Avery created role: Manager", - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.5, - "average_fatigue": 0.5 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-ops-1-delivery-36", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "ops-1", - "tick": 36, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-9d3ca510-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 39, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 13, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 9, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Avery created role: Manager", - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 39, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 39, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 39, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-39", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 39, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 5, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 34] Mina created role: Manager", - "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 45, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 4, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - } - ], - "recent_events": [ - "[Tick 36] Avery rests", - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager", - "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 45, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 3, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 45] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager", - "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 45, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 45] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager", - "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Avery rests" - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market", - "co_working_space", - "maker_lab" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "co_working_space" - ], - "customer_row": [ - "garage_office", - "supply_market" - ], - "supply_market": [ - "customer_row", - "maker_lab" - ], - "co_working_space": [ - "garage_office", - "maker_lab" - ], - "maker_lab": [ - "co_working_space", - "supply_market" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1 - }, - "supply_market": { - "parts": 10 - }, - "maker_lab": { - "prototype": 1, - "parts": 5 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 2, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 2, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.5, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "remote-team", - "cash": 0, - "operating_cost_per_tick": 3, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 2, - "team_size": 2, - "active_contributor_count": 2, - "role_claims": { - "9d3ca510": [ - "Manager" - ], - "ops-1": [ - "operations", - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - }, - { - "cluster_id": "cluster-operations", - "label_hint": "operations", - "agents": [ - "Mina" - ], - "confidence": 0.5, - "evidence": [ - "role claims: operations, Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 30 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 12, - "status": "missed" - }, - { - "request_id": "remote-pilot", - "description": "Coordinate a remote pilot across locations", - "required_item": "prototype", - "reward": 40, - "deadline_tick": 24, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "co_working_space", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "joined" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "maker_lab", - "joining_cost": 10, - "role_claims": [ - "builder" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-9d3ca510-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "9d3ca510", - "tick": 45, - "stage": "remote-team" - }, - { - "suggestion_id": "sug-ops-1-delegation-45", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "ops-1", - "tick": 45, - "stage": "remote-team" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 14, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 2 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 3 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 24 - }, - { - "role_id": "role-006", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-007", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 27 - }, - { - "role_id": "role-008", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 28 - }, - { - "role_id": "role-009", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 32 - }, - { - "role_id": "role-010", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-011", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 34 - }, - { - "role_id": "role-012", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 36 - }, - { - "role_id": "role-013", - "name": "Manager", - "holder_agent_id": "ops-1", - "department_id": null, - "created_tick": 39 - }, - { - "role_id": "role-014", - "name": "Manager", - "holder_agent_id": "9d3ca510", - "department_id": null, - "created_tick": 40 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.04, - "ipo_triggered": false, - "ipo_progress": 4e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "9d3ca510", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - }, - { - "id": "ops-1", - "name": "Mina", - "location": "co_working_space", - "inventory": {}, - "last_action": "rested", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "operations", - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery recruited Mina; company spent 8 cash", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 2] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 4] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 5] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 6] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 3 cash for operations", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 12] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 13] Company missed demand first-prototype", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 14] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 15] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 20] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 21] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 21] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 22] Mina says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 23] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 24] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 25] Company missed demand remote-pilot", - "visibility": { - "locations": [ - "co_working_space", - "customer_row", - "garage_office", - "maker_lab", - "supply_market" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Mina rests", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 27] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 27] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 28] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 31] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 33] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 34] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Suggestion for Mina: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 36] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 36] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 37] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 39] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Mina created role: Manager", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 40] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "co_working_space" - ] - } - }, - { - "event": "[Tick 45] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 36] Mina created role: Manager", - "[Tick 37] Avery rests", - "[Tick 39] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 39] Avery rests", - "[Tick 39] Mina created role: Manager", - "[Tick 40] Avery created role: Manager", - "[Tick 45] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Suggestion for Mina: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 45] Avery rests" - ] - } - ], - "observer_summary": { - "ticks_recorded": 48, - "action_distribution": { - "interview": 15, - "create_role": 14, - "accept_suggestion": 13, - "rest": 11, - "deliver": 11, - "form_team": 9, - "craft": 9, - "recruit": 7, - "say": 6 - }, - "total_communications": 6, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 63, - "total_actions": 95, - "failure_rate": 0.6631578947368421, - "top_colocation_pairs": [], - "final_alive_agents": 2, - "final_resource_total": 18, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "say": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "create_role": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "create_role": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "rest": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "rest": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "interview": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "say": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "craft": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "say": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "rest": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "craft": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "form_team": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "accept_suggestion": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "deliver": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "interview": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "deliver": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "recruit": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "deliver": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "craft": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "accept_suggestion": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "interview": 1, - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "say": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "create_role": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "interview": 1, - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "create_role": 1, - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "create_role": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "craft": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "accept_suggestion": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "interview": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "say": 1, - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "form_team": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "interview": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "create_role": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "craft": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "rest": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "rest": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "form_team": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "rest": 1, - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "create_role": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "craft": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "interview": 2 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "recruit": 1, - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "recruit": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "rest": 1, - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "interview": 1, - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "accept_suggestion": 1, - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 2, - "total_actions": 2, - "agent_locations": { - "9d3ca510": "garage_office", - "ops-1": "co_working_space" - }, - "alive_agents": 2, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 18, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/public/demo/talent-war-seed-77.json b/frontend/public/demo/talent-war-seed-77.json deleted file mode 100644 index 904bf80..0000000 --- a/frontend/public/demo/talent-war-seed-77.json +++ /dev/null @@ -1,26982 +0,0 @@ -{ - "version": 1, - "generated_at": "2026-05-11T10:30:20.121353", - "config_path": "experiments/company-talent-war.yaml", - "seed": 77, - "ticks": 48, - "scenario": { - "id": "company-talent-war", - "title": "Company Talent War", - "hypothesis": "A founder with access to top talent can assemble a dream team before cash runs out.", - "counter_hypothesis": "Competing offers and high joining costs drain the treasury before any hire produces value.", - "tags": [ - "company", - "talent", - "hiring", - "competition" - ] - }, - "snapshots": [ - { - "name": "Company Genesis", - "tick": 1, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 28, - "operating_cost_per_tick": 2, - "runway_ticks": 14, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 10, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0228, - "ipo_triggered": false, - "ipo_progress": 2.28e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 1, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 2, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 26, - "operating_cost_per_tick": 2, - "runway_ticks": 13, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 0 - }, - "valuation": { - "current_valuation": 0.0226, - "ipo_triggered": false, - "ipo_progress": 2.2599999999999997e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 2, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "[Tick 2] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 3, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 24, - "operating_cost_per_tick": 2, - "runway_ticks": 12, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-delivery", - "label_hint": "delivery", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0224, - "ipo_triggered": false, - "ipo_progress": 2.24e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 3, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 4, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 22, - "operating_cost_per_tick": 2, - "runway_ticks": 11, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": {}, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-unclaimed", - "label_hint": "unclaimed", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 0, - "roles": [], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.0222, - "ipo_triggered": false, - "ipo_progress": 2.2200000000000002e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 4, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 5, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 20, - "operating_cost_per_tick": 2, - "runway_ticks": 10, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 1 - }, - "valuation": { - "current_valuation": 0.022, - "ipo_triggered": false, - "ipo_progress": 2.2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 5, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 0] Avery rests", - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 6, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 18, - "operating_cost_per_tick": 2, - "runway_ticks": 9, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0218, - "ipo_triggered": false, - "ipo_progress": 2.18e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 6, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Company burned 2 cash for operations", - "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 7, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 16, - "operating_cost_per_tick": 2, - "runway_ticks": 8, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0216, - "ipo_triggered": false, - "ipo_progress": 2.16e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 7, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 8, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 14, - "operating_cost_per_tick": 2, - "runway_ticks": 7, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 2 - }, - "valuation": { - "current_valuation": 0.0214, - "ipo_triggered": false, - "ipo_progress": 2.1399999999999998e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 8, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 2] Company burned 2 cash for operations", - "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 9, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 0.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 12, - "operating_cost_per_tick": 2, - "runway_ticks": 6, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0212, - "ipo_triggered": false, - "ipo_progress": 2.12e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 9, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 0, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 3] Company burned 2 cash for operations", - "[Tick 3] Avery rests", - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 10, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 10, - "operating_cost_per_tick": 2, - "runway_ticks": 5, - "open_demand_count": 1, - "delivered_count": 0, - "missed_count": 0, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "open" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.021, - "ipo_triggered": false, - "ipo_progress": 2.1e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 10, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 1, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 4] Company burned 2 cash for operations", - "[Tick 4] Avery created role: Manager", - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 11, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 8, - "operating_cost_per_tick": 2, - "runway_ticks": 4, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 3 - }, - "valuation": { - "current_valuation": 0.0208, - "ipo_triggered": false, - "ipo_progress": 2.08e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 11, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 2, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 5] Company burned 2 cash for operations", - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype" - ] - }, - { - "name": "Company Genesis", - "tick": 12, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 6, - "operating_cost_per_tick": 2, - "runway_ticks": 3, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0206, - "ipo_triggered": false, - "ipo_progress": 2.06e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 12, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 3, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 6] Company burned 2 cash for operations", - "[Tick 7] Company burned 2 cash for operations", - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 13, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 4, - "operating_cost_per_tick": 2, - "runway_ticks": 2, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 13, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0204, - "ipo_triggered": false, - "ipo_progress": 2.04e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 13, - "life_stage": "infant", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 4, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 8] Company burned 2 cash for operations", - "[Tick 8] Avery rests", - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 14, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 2, - "operating_cost_per_tick": 2, - "runway_ticks": 1, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 13, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 4 - }, - "valuation": { - "current_valuation": 0.0202, - "ipo_triggered": false, - "ipo_progress": 2.02e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 14, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Company burned 2 cash for operations", - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 15, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 13, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 15, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 2, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 16, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 1.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 13, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 16, - "life_stage": "infant", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 1, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - } - ], - "recent_events": [ - "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations" - ] - }, - { - "name": "Company Genesis", - "tick": 17, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 2.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-13", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 13, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 17, - "life_stage": "infant", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 2, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 18, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 3.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 1, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 18, - "life_stage": "infant", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 3, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 10] Company burned 2 cash for operations", - "[Tick 11] Company burned 2 cash for operations", - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 19, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 1, - "juvenile": 0, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 4.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 19, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 19, - "life_stage": "infant", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 4, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 20, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 5.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 19, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 20, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 5, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 21, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 19, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 21, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 6, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 22, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 19, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 22, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 7, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 11] Company missed demand first-prototype", - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 23, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 8, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-19", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 19, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 23, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 8, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 12] Company burned 2 cash for operations", - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 24, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 24, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 9, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Company burned 2 cash for operations", - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6" - ] - }, - { - "name": "Company Genesis", - "tick": 25, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 25, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 25, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 10, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 26, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 10.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 25, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 26, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 2, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 26, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 11, - "fatigue": 10, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 13] Avery rests", - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 27, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 25, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 26, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 27, - "life_stage": "juvenile", - "vitality": 89, - "immune_resilience": 50, - "stress": 11, - "hunger": 12, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 28, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 12.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 25, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 26, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 28, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 13, - "fatigue": 12, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 29, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 13.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-25", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 25, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 26, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 29, - "life_stage": "juvenile", - "vitality": 87, - "immune_resilience": 50, - "stress": 13, - "hunger": 14, - "fatigue": 13, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 30, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.0, - "average_fatigue": 14.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delivery-26", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 26, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 30, - "life_stage": "juvenile", - "vitality": 86, - "immune_resilience": 50, - "stress": 14, - "hunger": 15, - "fatigue": 14, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 14] Company burned 2 cash for operations", - "[Tick 15] Company burned 2 cash for operations", - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 31, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 11.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 31, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 3, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 31, - "life_stage": "juvenile", - "vitality": 88, - "immune_resilience": 50, - "stress": 12, - "hunger": 14, - "fatigue": 11, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 18] Avery created role: Manager", - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 32, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 31, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 32, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 32, - "life_stage": "juvenile", - "vitality": 90, - "immune_resilience": 50, - "stress": 10, - "hunger": 13, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 33, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 31, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 32, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 33, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 12, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 34, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 6, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 31, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 32, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 34, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 11, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 35, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-31", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 31, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 32, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 35, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 10, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5" - ] - }, - { - "name": "Company Genesis", - "tick": 36, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delivery-32", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 32, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 36, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 9, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5" - ] - }, - { - "name": "Company Genesis", - "tick": 37, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 37, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 37, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 8, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 38, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 37, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 38, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 38, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 7, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 39, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 6.0, - "average_fatigue": 0.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: rested" - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 37, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 38, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "rested", - "age_ticks": 39, - "life_stage": "juvenile", - "vitality": 100, - "immune_resilience": 50, - "stress": 0, - "hunger": 6, - "fatigue": 0, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping." - ] - }, - { - "name": "Company Genesis", - "tick": 40, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 7.0, - "average_fatigue": 1.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 37, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 38, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 40, - "life_stage": "juvenile", - "vitality": 99, - "immune_resilience": 50, - "stress": 1, - "hunger": 7, - "fatigue": 1, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 41, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 8.0, - "average_fatigue": 2.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-37", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 37, - "stage": "talent-war" - }, - { - "suggestion_id": "sug-0fece6cb-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 38, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 4, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 41, - "life_stage": "juvenile", - "vitality": 98, - "immune_resilience": 50, - "stress": 2, - "hunger": 8, - "fatigue": 2, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 26] Avery created role: Manager", - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"" - ] - }, - { - "name": "Company Genesis", - "tick": 42, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 9.0, - "average_fatigue": 3.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delivery-38", - "category": "delivery", - "message": "You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "target_agent_id": "0fece6cb", - "tick": 38, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 42, - "life_stage": "juvenile", - "vitality": 97, - "immune_resilience": 50, - "stress": 3, - "hunger": 9, - "fatigue": 3, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 30] Avery rests", - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager" - ] - }, - { - "name": "Company Genesis", - "tick": 43, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 10.0, - "average_fatigue": 4.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 43, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 43, - "life_stage": "juvenile", - "vitality": 96, - "immune_resilience": 50, - "stress": 4, - "hunger": 10, - "fatigue": 4, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 44, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 11.0, - "average_fatigue": 5.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 43, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 44, - "life_stage": "juvenile", - "vitality": 95, - "immune_resilience": 50, - "stress": 5, - "hunger": 11, - "fatigue": 5, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 45, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 12.0, - "average_fatigue": 6.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 43, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 45, - "life_stage": "juvenile", - "vitality": 94, - "immune_resilience": 50, - "stress": 6, - "hunger": 12, - "fatigue": 6, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 46, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 13.0, - "average_fatigue": 7.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 43, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 46, - "life_stage": "juvenile", - "vitality": 93, - "immune_resilience": 50, - "stress": 7, - "hunger": 13, - "fatigue": 7, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 47, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 14.0, - "average_fatigue": 8.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [ - { - "suggestion_id": "sug-0fece6cb-delegation-43", - "category": "delegation", - "message": "You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "target_agent_id": "0fece6cb", - "tick": 43, - "stage": "talent-war" - } - ], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 47, - "life_stage": "juvenile", - "vitality": 92, - "immune_resilience": 50, - "stress": 8, - "hunger": 14, - "fatigue": 8, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - }, - { - "name": "Company Genesis", - "tick": 48, - "locations": [ - "garage_office", - "customer_row", - "supply_market" - ], - "location_graph": { - "garage_office": [ - "customer_row", - "supply_market" - ], - "customer_row": [ - "garage_office" - ], - "supply_market": [ - "garage_office" - ] - }, - "location_items": { - "garage_office": { - "laptop": 1, - "prototype": 1 - }, - "supply_market": { - "parts": 8 - } - }, - "location_features": {}, - "resource_zones": {}, - "environment": { - "season": "spring", - "weather": "clear", - "disaster": null - }, - "event_log_limit": 2000, - "experiment": { - "perception": "local", - "communication": "colocated", - "social_tracking": true, - "auto_eat": false, - "mortality": true, - "memory_size": 50 - }, - "pressure": { - "survival": { - "enabled": true - }, - "resources": { - "enabled": true, - "decay_every": 0, - "regeneration_every": 0, - "storage_decay_multiplier": 0.25 - }, - "disease": { - "enabled": true - }, - "environment": { - "enabled": false, - "season_length_ticks": 500 - } - }, - "metrics": { - "alive_count": 1, - "total_births": 0, - "total_deaths": 0, - "birth_rate": 0.0, - "death_rate": 0.0, - "age_distribution": { - "infant": 0, - "juvenile": 1, - "adult": 0, - "elder": 0 - }, - "active_outbreak_estimate": 0, - "average_hunger": 15.0, - "average_fatigue": 9.0 - }, - "company": { - "enabled": true, - "name": "Genesis Works", - "stage": "talent-war", - "cash": 0, - "operating_cost_per_tick": 2, - "runway_ticks": 0, - "open_demand_count": 0, - "delivered_count": 0, - "missed_count": 1, - "team_size": 1, - "active_contributor_count": 1, - "role_claims": { - "0fece6cb": [ - "Manager" - ] - }, - "artifact_count": 0, - "artifact_read_count": 0, - "artifact_write_count": 0, - "organization": { - "clusters": [ - { - "cluster_id": "cluster-manager", - "label_hint": "manager", - "agents": [ - "Avery" - ], - "confidence": 0.5, - "evidence": [ - "role claims: Manager", - "last action: said: Let's coordinate on the next delivery." - ] - } - ], - "handoff_loops": [], - "routine_stability_score": 15 - }, - "survival_gauntlet": null, - "demand_streams": [ - { - "request_id": "first-prototype", - "description": "Ship the first working prototype", - "required_item": "prototype", - "reward": 30, - "deadline_tick": 10, - "status": "missed" - } - ], - "candidate_pool": [ - { - "candidate_id": "ops-1", - "name": "Mina", - "personality": "Operations generalist; spots repeated work and writes lightweight routines.", - "location": "garage_office", - "joining_cost": 5, - "role_claims": [ - "operations" - ], - "status": "available" - }, - { - "candidate_id": "builder-1", - "name": "Ilya", - "personality": "Builder; turns parts into deliverables and adapts to customer changes.", - "location": "garage_office", - "joining_cost": 12, - "role_claims": [ - "builder" - ], - "status": "available" - }, - { - "candidate_id": "sales-1", - "name": "Clara", - "personality": "Sales strategist; reads the room, closes deals, and remembers every rejection pattern.", - "location": "customer_row", - "joining_cost": 14, - "role_claims": [ - "sales" - ], - "status": "available" - }, - { - "candidate_id": "architect-1", - "name": "Dorian", - "personality": "System architect; sees the whole board, designs abstractions, but costs a fortune.", - "location": "supply_market", - "joining_cost": 18, - "role_claims": [ - "engineering" - ], - "status": "available" - } - ], - "artifacts": [], - "pending_suggestions": [], - "org": { - "department_count": 0, - "departments": [], - "role_count": 5, - "roles": [ - { - "role_id": "role-001", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 4 - }, - { - "role_id": "role-002", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 18 - }, - { - "role_id": "role-003", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 26 - }, - { - "role_id": "role-004", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 31 - }, - { - "role_id": "role-005", - "name": "Manager", - "holder_agent_id": "0fece6cb", - "department_id": null, - "created_tick": 41 - } - ], - "rule_count": 0, - "active_rules": [], - "has_charter": false - }, - "market": { - "total_revenue_earned": 0, - "active_shocks": [], - "open_demand_count": 5 - }, - "valuation": { - "current_valuation": 0.02, - "ipo_triggered": false, - "ipo_progress": 2e-12, - "consecutive_profitable_ticks": 0 - }, - "space": { - "stage": "garage", - "capacity": 3, - "ticks_over_capacity": 0 - } - }, - "recipes": { - "prototype": { - "inputs": { - "parts": 2 - }, - "outputs": { - "prototype": 1 - } - } - }, - "agents": [ - { - "id": "0fece6cb", - "name": "Avery", - "location": "garage_office", - "inventory": { - "prototype": 1 - }, - "last_action": "said: Let's coordinate on the next delivery.", - "age_ticks": 48, - "life_stage": "juvenile", - "vitality": 91, - "immune_resilience": 50, - "stress": 9, - "hunger": 15, - "fatigue": 9, - "pregnancy": null, - "alive": true, - "death_cause": null, - "contagion_profile": { - "status": "susceptible", - "infectious": false, - "exposure_count": 0, - "infected_ticks": 0 - }, - "role_claims": [ - "Manager" - ] - } - ], - "event_log": [ - { - "event": "[Tick 0] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 1] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 1] Avery interviewed Mina — joining cost reduced from 10 to 8", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 2] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 2] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 3] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 3] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 4] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 4] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 5] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 6] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 7] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 8] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 9] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 9] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 10] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 11] Company missed demand first-prototype", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 12] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 13] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 13] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 14] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 15] Company burned 2 cash for operations", - "visibility": { - "locations": [ - "customer_row", - "garage_office", - "supply_market" - ] - } - }, - { - "event": "[Tick 16] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 18] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 19] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 22] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 23] Avery interviewed Mina — joining cost reduced from 8 to 6", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 25] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 26] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 30] Avery rests", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 31] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 41] Avery created role: Manager", - "visibility": { - "locations": [ - "garage_office" - ] - } - }, - { - "event": "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "visibility": { - "locations": [ - "garage_office" - ] - } - } - ], - "recent_events": [ - "[Tick 31] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 31] Avery created role: Manager", - "[Tick 32] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 34] Avery interviewed Mina — joining cost reduced from 6 to 5", - "[Tick 37] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team.", - "[Tick 38] Suggestion for Avery: You have been delivering frequently. Consider forming a Delivery Department to streamline shipping.", - "[Tick 39] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 40] Avery says: \"Let's coordinate on the next delivery.\"", - "[Tick 41] Avery created role: Manager", - "[Tick 43] Suggestion for Avery: You keep assigning work and hiring. Consider formalizing a Manager role to lead the growing team." - ] - } - ], - "observer_summary": { - "ticks_recorded": 48, - "action_distribution": { - "form_team": 11, - "deliver": 8, - "say": 6, - "rest": 5, - "create_role": 5, - "craft": 5, - "accept_suggestion": 4, - "interview": 3, - "recruit": 1 - }, - "total_communications": 6, - "total_resource_transfers": 0, - "total_cooperation_events": 0, - "total_failed_actions": 29, - "total_actions": 48, - "failure_rate": 0.6041666666666666, - "top_colocation_pairs": [], - "final_alive_agents": 1, - "final_resource_total": 11, - "peak_disease_infected": 0 - }, - "measurement_series": [ - { - "tick": 0, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 1, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 2, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 3, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 4, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 5, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 6, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 7, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 8, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 9, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 10, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 11, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 12, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 13, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 14, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 15, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 16, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 17, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 18, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 19, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 20, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 21, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 22, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 23, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 24, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 25, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 26, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 27, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 28, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 29, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 30, - "action_verbs": { - "rest": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 31, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 32, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 33, - "action_verbs": { - "deliver": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 34, - "action_verbs": { - "interview": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 35, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 36, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 37, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 38, - "action_verbs": { - "form_team": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 39, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 40, - "action_verbs": { - "say": 1 - }, - "resource_transfers": [], - "communication_count": 1, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 41, - "action_verbs": { - "create_role": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 0, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 42, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 43, - "action_verbs": { - "recruit": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 44, - "action_verbs": { - "accept_suggestion": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 45, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 46, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - }, - { - "tick": 47, - "action_verbs": { - "craft": 1 - }, - "resource_transfers": [], - "communication_count": 0, - "cooperation_events": 0, - "failed_actions": 1, - "total_actions": 1, - "agent_locations": { - "0fece6cb": "garage_office" - }, - "alive_agents": 1, - "dead_agents": 0, - "births": 0, - "deaths": 0, - "resource_total": 11, - "disease_infected": 0, - "season": "spring" - } - ] -} \ No newline at end of file diff --git a/frontend/qa-checkpoints/A-global-map-idle-2026-04-13T02-35-37-869Z.png b/frontend/qa-checkpoints/A-global-map-idle-2026-04-13T02-35-37-869Z.png deleted file mode 100644 index 837c92c..0000000 Binary files a/frontend/qa-checkpoints/A-global-map-idle-2026-04-13T02-35-37-869Z.png and /dev/null differ diff --git a/frontend/qa-checkpoints/A-global-map-idle-2026-04-13T02-37-49-343Z.png b/frontend/qa-checkpoints/A-global-map-idle-2026-04-13T02-37-49-343Z.png deleted file mode 100644 index 0492c43..0000000 Binary files a/frontend/qa-checkpoints/A-global-map-idle-2026-04-13T02-37-49-343Z.png and /dev/null differ diff --git a/frontend/qa-checkpoints/A-global-map-idle-pass2-2026-04-13T02-39-22-689Z.png b/frontend/qa-checkpoints/A-global-map-idle-pass2-2026-04-13T02-39-22-689Z.png deleted file mode 100644 index 194dafa..0000000 Binary files a/frontend/qa-checkpoints/A-global-map-idle-pass2-2026-04-13T02-39-22-689Z.png and /dev/null differ diff --git a/frontend/qa-checkpoints/B-district-focus-2026-04-13T02-37-58-736Z.png b/frontend/qa-checkpoints/B-district-focus-2026-04-13T02-37-58-736Z.png deleted file mode 100644 index 4de3036..0000000 Binary files a/frontend/qa-checkpoints/B-district-focus-2026-04-13T02-37-58-736Z.png and /dev/null differ diff --git a/frontend/qa-checkpoints/B-district-focus-pass2-2026-04-13T02-39-29-265Z.png b/frontend/qa-checkpoints/B-district-focus-pass2-2026-04-13T02-39-29-265Z.png deleted file mode 100644 index 4ded74b..0000000 Binary files a/frontend/qa-checkpoints/B-district-focus-pass2-2026-04-13T02-39-29-265Z.png and /dev/null differ diff --git a/frontend/qa-checkpoints/C-agent-spotlight-pass2-2026-04-13T02-39-45-982Z.png b/frontend/qa-checkpoints/C-agent-spotlight-pass2-2026-04-13T02-39-45-982Z.png deleted file mode 100644 index 44f9933..0000000 Binary files a/frontend/qa-checkpoints/C-agent-spotlight-pass2-2026-04-13T02-39-45-982Z.png and /dev/null differ diff --git a/frontend/qa-checkpoints/D-hud-readability-pass2-2026-04-13T02-39-50-267Z.png b/frontend/qa-checkpoints/D-hud-readability-pass2-2026-04-13T02-39-50-267Z.png deleted file mode 100644 index 75a7097..0000000 Binary files a/frontend/qa-checkpoints/D-hud-readability-pass2-2026-04-13T02-39-50-267Z.png and /dev/null differ diff --git a/frontend/scripts/e2e-dev-stack.sh b/frontend/scripts/e2e-dev-stack.sh deleted file mode 100755 index 5d0c097..0000000 --- a/frontend/scripts/e2e-dev-stack.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env bash -# Starts AnteLab API (:8080) then Vite dev server (:3000) for Playwright e2e. -# Requires repo-root `.venv` (see Makefile `setup` / `run-backend`). -set -euo pipefail - -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -FRONTEND_DIR="$(cd "$SCRIPT_DIR/.." && pwd)" -REPO_ROOT="$(cd "$FRONTEND_DIR/.." && pwd)" -UVICORN="${REPO_ROOT}/.venv/bin/uvicorn" - -if [[ ! -x "$UVICORN" ]]; then - echo "e2e-dev-stack: missing ${UVICORN} (create venv and install deps from repo root)." >&2 - exit 1 -fi - -cd "$REPO_ROOT" -UV_PID="" - -cleanup() { - if [[ -n "$UV_PID" ]]; then - kill "$UV_PID" 2>/dev/null || true - fi -} -trap cleanup EXIT INT TERM - -if ! curl -sf "http://127.0.0.1:8080/api/health" >/dev/null; then - "$UVICORN" antelab.api.server:app --port 8080 & - UV_PID=$! -fi - -for _ in $(seq 1 120); do - if curl -sf "http://127.0.0.1:8080/api/health" >/dev/null; then - break - fi - sleep 0.25 -done - -if ! curl -sf "http://127.0.0.1:8080/api/health" >/dev/null; then - echo "e2e-dev-stack: backend did not become healthy on :8080" >&2 - exit 1 -fi - -cd "$FRONTEND_DIR" -exec npm run dev -- --host 127.0.0.1 --port 3000 diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx deleted file mode 100644 index 3aec0ed..0000000 --- a/frontend/src/App.tsx +++ /dev/null @@ -1,472 +0,0 @@ -import { useEffect, useMemo, useRef, useState, type WheelEvent } from "react"; -import "./styles/reset.css"; -import "./styles/tokens.css"; -import "./styles/themes/index.css"; -import "./styles/layout.css"; -import "./styles/components.css"; -import "./styles/effects.css"; -import { - classifyEvent, - findActor, - isEditableTarget, - type AgentInfo, - type EventKind, -} from "./appModel"; -import { WorldViewport } from "./components/WorldViewport"; -import { IconDock } from "./components/IconDock"; -import { NarrativeBar } from "./components/NarrativeBar"; -import { TopBar } from "./components/TopBar"; -import { DemoPlayer } from "./components/DemoPlayer"; -import { CastStrip } from "./components/CastStrip"; -import { DEFAULT_CAMERA_ZOOM, clampZoomLevel, snapCameraPan, stepZoomLevel } from "./pixelSpec"; -import { - isShowDeckToggleKey, - readShowDeckOpen, - writeShowDeckOpen, -} from "./showDeckState"; -import { useSimulationData } from "./useSimulationData"; -import { - stepAgentVisualState, - type AgentVisualMeta, - type AgentVisualState, - type VisualAgentSprite, - type VisualFacingDirection, -} from "./agentVisualMovement"; - -type ActivityKind = EventKind; -type FacingDirection = VisualFacingDirection; -type AgentCondition = "stable" | "strained" | "critical" | "outbreak"; -type DistrictState = "stable" | "warning" | "crisis" | "recovery"; -type Faction = "amber" | "mint" | "violet" | "cyan"; -export type ThemeName = "control-room" | "theater" | "brutalist"; - -const DEFAULT_CAMERA = { x: 72, y: 96, zoom: clampZoomLevel(DEFAULT_CAMERA_ZOOM) }; - -function hashString(v: string): number { - let h = 0; for (let i = 0; i < v.length; i += 1) { h = (h << 5) - h + v.charCodeAt(i); h |= 0; } return Math.abs(h); -} -function snapToGrid(v: number, s = 0.0015): number { return Math.round(v / s) * s; } -function snapPoint(p: { x: number; y: number }) { return { x: snapToGrid(p.x), y: snapToGrid(p.y) }; } - -function clampIntoDistrict(p: { x: number; y: number }, d: { x: number; y: number; width: number; height: number }) { - return { - x: Math.min(d.x + d.width * 0.88, Math.max(d.x + d.width * 0.12, p.x)), - y: Math.min(d.y + d.height * 0.76, Math.max(d.y + d.height * 0.18, p.y)), - }; -} - -function factionFromId(id: string): Faction { - return (["amber", "mint", "violet", "cyan"] as const)[hashString(id) % 4]; -} - -function conditionForAgent(a: AgentInfo): AgentCondition { - if (a.alive === false) return "critical"; - const v = a.vitality ?? 1; - if (v < 0.15) return "critical"; - if (v < 0.3) return "strained"; - if (a.contagion_profile?.infectious === true) return "outbreak"; - return "stable"; -} - -function statusBadgeForCondition(c: AgentCondition): string { - if (c === "critical") return "CRIT"; if (c === "strained") return "LOW"; - if (c === "outbreak") return "SICK"; return ""; -} - -export interface DistrictView { - location: string; count: number; x: number; y: number; - width: number; height: number; state: string; -} - -export function App() { - const isDemoMode = new URLSearchParams(window.location.search).has("demo"); - - // Theme state - const [theme, setTheme] = useState(() => { - return (localStorage.getItem("antelab-theme") as ThemeName) || "control-room"; - }); - - useEffect(() => { - document.documentElement.setAttribute("data-theme", theme); - localStorage.setItem("antelab-theme", theme); - }, [theme]); - - const { - liveWorld, streamStatus, error, isLoading, scenario, - replayTick, - setIsPlaying, setReplayWorld, - runSingleTick, runBatchTicks, - narrativeEntries, - } = useSimulationData({ disabled: isDemoMode }); - - const world = useMemo(() => liveWorld, [liveWorld]); - - const [camera, setCamera] = useState(DEFAULT_CAMERA); - const [selectedAgentId, setSelectedAgentId] = useState(null); - const [narrativeHoveredAgentId, setNarrativeHoveredAgentId] = useState(null); - const [showDeckOpen, setShowDeckOpen] = useState(() => readShowDeckOpen(localStorage)); - - const setShowDeckPinned = (open: boolean) => { - setShowDeckOpen(open); - writeShowDeckOpen(localStorage, open); - }; - - const handleNarrativeClickAgent = (id: string) => { - setSelectedAgentId(id); - // Pan camera to agent's district - const sprite = worldAgentSprites.find((s) => s.id === id); - if (sprite) { - setCamera((c) => ({ ...c, x: -sprite.centerX * c.zoom * 800 + 400, y: -sprite.centerY * c.zoom * 560 + 280 })); - } - }; - - const handleNarrativeClickLocation = (loc: string) => { - const district = districtLayout.find((d) => d.location === loc); - if (district) { - setCamera((c) => ({ - ...c, - x: -(district.x + district.width / 2) * c.zoom * 800 + 400, - y: -(district.y + district.height / 2) * c.zoom * 560 + 280, - })); - } - }; - - const displayCamera = useMemo(() => { - const { x, y } = snapCameraPan(camera.x, camera.y, camera.zoom); - return { x, y, zoom: camera.zoom }; - }, [camera]); - - // District layout - const locationStats = useMemo(() => { - const m = new Map(); - if (!world) return m; - for (const a of world.agents ?? []) { - const loc = a.location || "unknown"; - m.set(loc, (m.get(loc) ?? 0) + 1); - } - for (const loc of world.locations ?? []) { if (!m.has(loc)) m.set(loc, 0); } - return m; - }, [world]); - - const districtLayout = useMemo((): DistrictView[] => { - const entries = [...locationStats.entries()]; - if (entries.length === 0) return []; - const cols = Math.max(1, Math.ceil(Math.sqrt(entries.length))); - const rows = Math.max(1, Math.ceil(entries.length / cols)); - return entries.map(([location, count], idx) => { - const row = Math.floor(idx / cols), col = idx % cols; - const baseX = (col + 0.12) / cols, baseY = (row + 0.12) / rows; - const tw = 0.76 / cols, th = 0.76 / rows; - const j = hashString(location); - const jx = ((j % 7) - 3) * 0.004, jy = (((j >> 3) % 7) - 3) * 0.004; - return { - location, count, - x: snapToGrid(baseX + jx), y: snapToGrid(baseY + jy), - width: snapToGrid(tw), height: snapToGrid(th), - state: "stable" as DistrictState, - }; - }); - }, [locationStats]); - - const roadSegments = useMemo(() => { - const byLoc = new Map(districtLayout.map(d => [d.location, d])); - const graph = world?.location_graph; - if (graph) { - const seen = new Set(); - const segs: Array<{x1:number;y1:number;x2:number;y2:number}> = []; - for (const [src, neighbors] of Object.entries(graph)) { - const sd = byLoc.get(src); if (!sd) continue; - for (const tgt of neighbors) { - const td = byLoc.get(tgt); if (!td) continue; - const key = [src, tgt].sort().join("::"); - if (seen.has(key)) continue; seen.add(key); - segs.push({ x1: sd.x + sd.width/2, y1: sd.y + sd.height/2, x2: td.x + td.width/2, y2: td.y + td.height/2 }); - } - } - if (segs.length > 0) return segs; - } - return []; - }, [districtLayout, world?.location_graph]); - - const agentsByLocation = useMemo(() => { - const m = new Map(); - for (const a of world?.agents ?? []) { - const loc = a.location || "unknown"; - if (!m.has(loc)) m.set(loc, []); - m.get(loc)!.push(a); - } - return m; - }, [world]); - - interface SpriteView { - id: string; name: string; location: string; x: number; y: number; - centerX: number; centerY: number; - activityKind: ActivityKind; rawActivity: string; - faction: Faction; - condition: AgentCondition; statusBadge: string; - minX: number; maxX: number; minY: number; maxY: number; - } - - const worldAgentSprites = useMemo((): SpriteView[] => { - const sprites: SpriteView[] = []; - for (const district of districtLayout) { - const agents = agentsByLocation.get(district.location) ?? []; - for (let idx = 0; idx < agents.length; idx += 1) { - const agent = agents[idx]; - const kind: ActivityKind = classifyEvent(agent.last_action ?? ""); - const condition = conditionForAgent(agent); - const slotRow = Math.floor(idx / 4), slotCol = idx % 4; - const sx = 12 + slotCol * 22, sy = 22 + slotRow * 26; - const slot = snapPoint({ x: district.x + district.width * (sx / 100), y: district.y + district.height * (sy / 100) }); - const pos = snapPoint(clampIntoDistrict(slot, district)); - sprites.push({ - id: agent.id, name: agent.name, location: agent.location, - x: pos.x, y: pos.y, - centerX: snapToGrid(district.x + district.width / 2), - centerY: snapToGrid(district.y + district.height / 2), - activityKind: kind, - rawActivity: agent.last_action ?? "Idle", - faction: factionFromId(agent.id), - condition, - statusBadge: statusBadgeForCondition(condition), - minX: district.x + district.width * 0.12, - maxX: district.x + district.width * 0.88, - minY: district.y + district.height * 0.18, - maxY: district.y + district.height * 0.76, - }); - } - } - return sprites; - }, [districtLayout, agentsByLocation]); - - // Agent factions: stable record for IconDock and halo layer - const agentFactions = useMemo((): Record => { - const rec: Record = {}; - for (const a of world?.agents ?? []) { - rec[a.id] = factionFromId(a.id); - } - return rec; - }, [world?.agents]); - - // Detail agent for floating card - const detailAgent = useMemo(() => { - if (!selectedAgentId || !world) return null; - return world.agents?.find((a) => a.id === selectedAgentId) ?? null; - }, [selectedAgentId, world]); - - // Smooth agent movement - const visualStateRef = useRef>({}); - const visualFrameRef = useRef(null); - const previousMetaRef = useRef>({}); - const [spritePositions, setSpritePositions] = useState>({}); - const [spriteTrails, setSpriteTrails] = useState>>({}); - - useEffect(() => { - if (worldAgentSprites.length === 0) { setSpritePositions({}); setSpriteTrails({}); visualStateRef.current = {}; return; } - let active = true; - const tick = world?.tick ?? 0; - const step = (now: number) => { - if (!active) return; - const prev = visualFrameRef.current; visualFrameRef.current = now; - const dt = prev != null ? Math.min(now - prev, 200) : 16; - const currentMeta: Record = {}; - for (const s of worldAgentSprites) { - currentMeta[s.id] = { location: s.location, centerX: s.centerX, centerY: s.centerY }; - } - const nextVisuals: Record = {}; - for (const s of worldAgentSprites) { - const vaSprite: VisualAgentSprite = { - id: s.id, location: s.location, - x: s.x, y: s.y, centerX: s.centerX, centerY: s.centerY, - minX: s.minX, maxX: s.maxX, minY: s.minY, maxY: s.maxY, - activityKind: s.activityKind, - }; - nextVisuals[s.id] = stepAgentVisualState({ - sprite: vaSprite, - previousState: visualStateRef.current[s.id], - previousMeta: previousMetaRef.current[s.id], - elapsedMs: dt, - nowMs: now, - tick, - }); - } - visualStateRef.current = nextVisuals; - previousMetaRef.current = currentMeta; - const posOut: Record = {}; - for (const [id, vs] of Object.entries(nextVisuals)) { - posOut[id] = { x: vs.x, y: vs.y, moving: vs.moving, arriving: vs.arriving, facing: vs.facing }; - } - setSpritePositions(posOut); setSpriteTrails({}); - requestAnimationFrame(step); - }; - const raf = requestAnimationFrame(step); - return () => { active = false; cancelAnimationFrame(raf); }; - }, [worldAgentSprites, world?.tick]); - - // Pulse markers for events - const [pulseMarkers, setPulseMarkers] = useState>([]); - const pulseTimersRef = useRef([]); - const seenPulseRef = useRef>(new Map()); - - useEffect(() => { - const events = world?.recent_events ?? []; - if (events.length === 0) return; - const latest = events.slice(-4); - const markers: Array<{ id: string; x: number; y: number; kind: ActivityKind }> = []; - for (const raw of latest) { - const actor = findActor(raw, world?.agents ?? []); - if (!actor) continue; - const sprite = worldAgentSprites.find(s => s.name === actor); - if (!sprite) continue; - const key = `${actor}:${raw}`; - if (seenPulseRef.current.has(key)) continue; - seenPulseRef.current.set(key, world?.tick ?? 0); - markers.push({ id: `${actor}-${Date.now()}`, x: sprite.centerX, y: sprite.centerY, kind: classifyEvent(raw) }); - } - if (markers.length === 0) return; - setPulseMarkers(prev => [...prev, ...markers]); - for (const m of markers) { - const t = window.setTimeout(() => setPulseMarkers(prev => prev.filter(p => p.id !== m.id)), 1400); - pulseTimersRef.current.push(t); - } - return () => { for (const t of pulseTimersRef.current) clearTimeout(t); pulseTimersRef.current = []; }; - }, [world?.tick]); - - // ── Keyboard shortcuts ── - useEffect(() => { - if (isDemoMode) return; - const handler = (e: KeyboardEvent) => { - if (isEditableTarget(e.target)) return; - - if (isShowDeckToggleKey(e)) { - e.preventDefault(); - setShowDeckOpen((prev) => { - const next = !prev; - writeShowDeckOpen(localStorage, next); - return next; - }); - return; - } - - if (e.key === " " || e.code === "Space") { - e.preventDefault(); - setIsPlaying(p => !p); - return; - } - if (e.key === "ArrowRight") { - e.preventDefault(); - if (e.shiftKey) { - runBatchTicks(5); - } else if (e.ctrlKey || e.metaKey) { - runBatchTicks(10); - } else { - runSingleTick(); - } - return; - } - if (e.key === "r" || e.key === "R") { - if (replayTick !== null) { - e.preventDefault(); - setReplayWorld(null); - } - return; - } - if ((e.ctrlKey || e.metaKey) && e.key === "0") { - e.preventDefault(); - setCamera(DEFAULT_CAMERA); - return; - } - if (e.key === "Escape") { - e.preventDefault(); - setSelectedAgentId(null); - return; - } - }; - window.addEventListener("keydown", handler); - return () => window.removeEventListener("keydown", handler); - }, [isDemoMode, setIsPlaying, runSingleTick, runBatchTicks, replayTick, setReplayWorld]); - - const handleWheel = (e: WheelEvent) => { - setCamera(c => ({ ...c, zoom: stepZoomLevel(c.zoom, e.deltaY > 0 ? "out" : "in") })); - }; - - if (isDemoMode) return ; - - if (isLoading) return ( -
-
- ANTELAB - Connecting to simulation... -
-
- ); - if (error) return ; - - return ( -
- - - setSelectedAgentId(id)} - onFocusLocation={() => {}} - world={world} - scenario={scenario} - agentFactions={agentFactions} - detailAgent={detailAgent} - onDismissDetail={() => setSelectedAgentId(null)} - narrativeHoveredAgentId={narrativeHoveredAgentId} - narrativeEntries={narrativeEntries} - /> - - - - - - -
- ); -} diff --git a/frontend/src/ErrorBoundary.tsx b/frontend/src/ErrorBoundary.tsx deleted file mode 100644 index 26e1cc1..0000000 --- a/frontend/src/ErrorBoundary.tsx +++ /dev/null @@ -1,60 +0,0 @@ -import { Component, type ErrorInfo, type ReactNode } from "react"; - -interface ErrorBoundaryProps { - children: ReactNode; -} - -interface ErrorBoundaryState { - hasError: boolean; - message: string; -} - -export class ErrorBoundary extends Component { - state: ErrorBoundaryState = { - hasError: false, - message: "", - }; - - static getDerivedStateFromError(error: Error): ErrorBoundaryState { - return { - hasError: true, - message: error.message || "Unknown frontend error", - }; - } - - componentDidCatch(error: Error, info: ErrorInfo): void { - console.error("AnteLab frontend render error:", error, info); - } - - render(): ReactNode { - if (this.state.hasError) { - return ( -
-

Frontend rendering failed

-

The app crashed during render. Try refreshing. If it persists, share this error:

-
-            {this.state.message}
-          
-
- ); - } - return this.props.children; - } -} diff --git a/frontend/src/agentVisualMovement.test.ts b/frontend/src/agentVisualMovement.test.ts deleted file mode 100644 index 2c3f994..0000000 --- a/frontend/src/agentVisualMovement.test.ts +++ /dev/null @@ -1,95 +0,0 @@ -import { describe, expect, it } from "vitest"; -import { - chooseWanderTarget, - stepAgentVisualState, - type AgentVisualState, - type VisualAgentSprite, -} from "./agentVisualMovement"; - -const baseSprite: VisualAgentSprite = { - id: "agent-1", - location: "harbor", - x: 0.3, - y: 0.4, - centerX: 0.35, - centerY: 0.45, - minX: 0.2, - maxX: 0.5, - minY: 0.25, - maxY: 0.6, - activityKind: "move", -}; - -describe("agentVisualMovement", () => { - it("chooses deterministic clamped wander targets", () => { - const first = chooseWanderTarget(baseSprite, 12, 2); - const second = chooseWanderTarget(baseSprite, 12, 2); - - expect(second).toEqual(first); - expect(first.x).toBeGreaterThanOrEqual(baseSprite.minX); - expect(first.x).toBeLessThanOrEqual(baseSprite.maxX); - expect(first.y).toBeGreaterThanOrEqual(baseSprite.minY); - expect(first.y).toBeLessThanOrEqual(baseSprite.maxY); - }); - - it("moves active agents farther than resting agents over the same time", () => { - const previous: AgentVisualState = { - x: 0.3, - y: 0.4, - targetX: 0.42, - targetY: 0.4, - mode: "roaming", - moving: true, - arriving: false, - facing: "right", - decisionIndex: 0, - nextDecisionMs: 5000, - }; - - const active = stepAgentVisualState({ - sprite: { ...baseSprite, activityKind: "move" }, - previousState: previous, - previousMeta: { location: "harbor", centerX: 0.35, centerY: 0.45 }, - elapsedMs: 500, - nowMs: 500, - tick: 10, - }); - const resting = stepAgentVisualState({ - sprite: { ...baseSprite, activityKind: "rest" }, - previousState: previous, - previousMeta: { location: "harbor", centerX: 0.35, centerY: 0.45 }, - elapsedMs: 500, - nowMs: 500, - tick: 10, - }); - - expect(active.x - previous.x).toBeGreaterThan(resting.x - previous.x); - }); - - it("enters traveling mode when the backend location changes", () => { - const next = stepAgentVisualState({ - sprite: { ...baseSprite, location: "fields", centerX: 0.7, centerY: 0.4, x: 0.72, y: 0.42 }, - previousState: { - x: 0.31, - y: 0.41, - targetX: 0.32, - targetY: 0.42, - mode: "roaming", - moving: false, - arriving: false, - facing: "down", - decisionIndex: 3, - nextDecisionMs: 2000, - }, - previousMeta: { location: "harbor", centerX: 0.35, centerY: 0.45 }, - elapsedMs: 100, - nowMs: 1000, - tick: 11, - }); - - expect(next.mode).toBe("traveling"); - expect(next.moving).toBe(true); - expect(next.targetX).toBeCloseTo(0.7); - expect(next.targetY).toBeCloseTo(0.4); - }); -}); diff --git a/frontend/src/agentVisualMovement.ts b/frontend/src/agentVisualMovement.ts deleted file mode 100644 index f7f4c62..0000000 --- a/frontend/src/agentVisualMovement.ts +++ /dev/null @@ -1,191 +0,0 @@ -export type VisualActivityKind = "move" | "say" | "exchange" | "rest" | "other"; -export type VisualFacingDirection = "up" | "down" | "left" | "right"; -export type AgentVisualMode = "roaming" | "traveling" | "paused"; - -export interface VisualAgentSprite { - id: string; - location: string; - x: number; - y: number; - centerX: number; - centerY: number; - minX: number; - maxX: number; - minY: number; - maxY: number; - activityKind: VisualActivityKind; -} - -export interface AgentVisualMeta { - location: string; - centerX: number; - centerY: number; -} - -export interface AgentVisualState { - x: number; - y: number; - targetX: number; - targetY: number; - mode: AgentVisualMode; - moving: boolean; - arriving: boolean; - facing: VisualFacingDirection; - decisionIndex: number; - nextDecisionMs: number; -} - -interface StepAgentVisualStateInput { - sprite: VisualAgentSprite; - previousState: AgentVisualState | undefined; - previousMeta: AgentVisualMeta | undefined; - elapsedMs: number; - nowMs: number; - tick: number; -} - -function hashString(value: string): number { - let hash = 0; - for (let index = 0; index < value.length; index += 1) { - hash = (hash << 5) - hash + value.charCodeAt(index); - hash |= 0; - } - return Math.abs(hash); -} - -function clamp(value: number, min: number, max: number): number { - return Math.min(max, Math.max(min, value)); -} - -function facingFromDelta(dx: number, dy: number): VisualFacingDirection { - if (Math.abs(dx) >= Math.abs(dy)) return dx >= 0 ? "right" : "left"; - return dy >= 0 ? "down" : "up"; -} - -function speedForActivity(kind: VisualActivityKind): number { - if (kind === "move") return 0.00022; - if (kind === "exchange") return 0.00016; - if (kind === "say") return 0.00013; - if (kind === "rest") return 0.000055; - return 0.000095; -} - -function decisionDelayMs(kind: VisualActivityKind, seed: number): number { - const jitter = seed % 900; - if (kind === "rest") return 2600 + jitter; - if (kind === "move") return 1100 + jitter * 0.5; - return 1500 + jitter * 0.65; -} - -export function chooseWanderTarget( - sprite: VisualAgentSprite, - tick: number, - decisionIndex: number, -): { x: number; y: number } { - const seed = hashString(`${sprite.id}:${sprite.location}:${sprite.activityKind}:${tick}:${decisionIndex}`); - const angle = ((seed % 360) * Math.PI) / 180; - const radiusBase = - sprite.activityKind === "move" - ? 0.42 - : sprite.activityKind === "exchange" - ? 0.3 - : sprite.activityKind === "say" - ? 0.24 - : sprite.activityKind === "rest" - ? 0.1 - : 0.18; - const radius = radiusBase * (0.62 + ((seed >> 5) % 7) * 0.055); - const width = sprite.maxX - sprite.minX; - const height = sprite.maxY - sprite.minY; - const anchorX = sprite.activityKind === "say" || sprite.activityKind === "exchange" ? sprite.centerX : sprite.x; - const anchorY = sprite.activityKind === "say" || sprite.activityKind === "exchange" ? sprite.centerY : sprite.y; - - return { - x: clamp(anchorX + Math.cos(angle) * width * radius, sprite.minX, sprite.maxX), - y: clamp(anchorY + Math.sin(angle) * height * radius, sprite.minY, sprite.maxY), - }; -} - -function moveToward( - from: { x: number; y: number }, - to: { x: number; y: number }, - maxDistance: number, -): { x: number; y: number; arrived: boolean } { - const dx = to.x - from.x; - const dy = to.y - from.y; - const distance = Math.hypot(dx, dy); - if (distance <= maxDistance || distance < 0.000001) { - return { x: to.x, y: to.y, arrived: true }; - } - const ratio = maxDistance / distance; - return { x: from.x + dx * ratio, y: from.y + dy * ratio, arrived: false }; -} - -export function stepAgentVisualState({ - sprite, - previousState, - previousMeta, - elapsedMs, - nowMs, - tick, -}: StepAgentVisualStateInput): AgentVisualState { - const locationChanged = Boolean(previousState && previousMeta && previousMeta.location !== sprite.location); - if (!previousState) { - const target = chooseWanderTarget(sprite, tick, 0); - return { - x: sprite.x, - y: sprite.y, - targetX: target.x, - targetY: target.y, - mode: "paused", - moving: false, - arriving: false, - facing: "down", - decisionIndex: 0, - nextDecisionMs: nowMs + decisionDelayMs(sprite.activityKind, hashString(sprite.id)), - }; - } - - if (locationChanged || previousState.mode === "traveling") { - const target = { x: sprite.centerX, y: sprite.centerY }; - const moved = moveToward(previousState, target, speedForActivity("move") * Math.max(16, elapsedMs) * 1.55); - return { - x: moved.x, - y: moved.y, - targetX: target.x, - targetY: target.y, - mode: moved.arrived ? "roaming" : "traveling", - moving: !moved.arrived, - arriving: moved.arrived, - facing: facingFromDelta(target.x - previousState.x, target.y - previousState.y), - decisionIndex: previousState.decisionIndex, - nextDecisionMs: moved.arrived ? nowMs : previousState.nextDecisionMs, - }; - } - - const shouldPickTarget = - nowMs >= previousState.nextDecisionMs || - Math.hypot(previousState.targetX - previousState.x, previousState.targetY - previousState.y) < 0.004; - const decisionIndex = shouldPickTarget ? previousState.decisionIndex + 1 : previousState.decisionIndex; - const target = shouldPickTarget - ? chooseWanderTarget(sprite, tick, decisionIndex) - : { x: previousState.targetX, y: previousState.targetY }; - const maxDistance = speedForActivity(sprite.activityKind) * Math.max(16, elapsedMs); - const moved = moveToward(previousState, target, maxDistance); - const nextDelay = shouldPickTarget - ? nowMs + decisionDelayMs(sprite.activityKind, hashString(`${sprite.id}:${decisionIndex}`)) - : previousState.nextDecisionMs; - - return { - x: moved.x, - y: moved.y, - targetX: target.x, - targetY: target.y, - mode: moved.arrived && sprite.activityKind === "rest" ? "paused" : "roaming", - moving: !moved.arrived, - arriving: false, - facing: facingFromDelta(target.x - previousState.x, target.y - previousState.y), - decisionIndex, - nextDecisionMs: nextDelay, - }; -} diff --git a/frontend/src/appModel.ts b/frontend/src/appModel.ts deleted file mode 100644 index b581c27..0000000 --- a/frontend/src/appModel.ts +++ /dev/null @@ -1,384 +0,0 @@ -export interface AgentInfo { - id: string; - name: string; - location: string; - inventory: Record; - last_action: string | null; - age_ticks?: number; - life_stage?: string; - vitality?: number; - immune_resilience?: number; - stress?: number; - hunger?: number; - fatigue?: number; - alive?: boolean; - death_cause?: string | null; - contagion_profile?: { - status?: string; - infectious?: boolean; - }; -} - -export interface WorldMetrics { - alive_count: number; - total_births?: number; - total_deaths?: number; - birth_rate?: number; - death_rate?: number; - age_distribution?: Record; - active_outbreak_estimate?: number; - average_hunger?: number; - average_fatigue?: number; -} - -export interface CompanyDemandSummary { - request_id: string; - description: string; - required_item: string; - reward: number; - deadline_tick: number; - status: "open" | "delivered" | "missed" | string; -} - -export interface CompanyArtifactSummary { - artifact_id: string; - kind: string; - title: string; - body: string; - created_by: string; - updated_by: string; - location: string; - tick_created: number; - tick_updated: number; - revision: number; -} - -export interface CompanyOrganizationCluster { - cluster_id: string; - label_hint: string; - agents: string[]; - confidence: number; - evidence: string[]; -} - -export interface CompanyHandoffLoop { - from: string; - to: string; - count: number; - evidence: string[]; -} - -export interface CompanyOrganizationSummary { - clusters: CompanyOrganizationCluster[]; - handoff_loops: CompanyHandoffLoop[]; - routine_stability_score: number; -} - -export interface CompanyGauntletShock { - shock_id: string; - kind: string; - tick: number; - status: "scheduled" | "active" | "completed" | string; -} - -export interface CompanyGauntletMetrics { - cash_continuity: number; - delivery_continuity: number; - decision_continuity: number; - knowledge_continuity: number; - team_regeneration: number; - strategy_adaptation: number; -} - -export interface CompanyGauntletRecoveryWindow { - shock_id: string; - ticks_since_shock: number; - recovered: boolean; -} - -export interface CompanyGauntletHalfLife { - shock_id: string; - ticks_survived_after_shock: number; -} - -export interface CompanyGauntletCollapse { - collapsed: boolean; - tick: number | null; - cause_candidates: string[]; -} - -export interface CompanySurvivalGauntletSummary { - enabled: boolean; - current_shock: CompanyGauntletShock | null; - prior_shocks: CompanyGauntletShock[]; - upcoming_shocks: CompanyGauntletShock[]; - survival_metrics: CompanyGauntletMetrics; - recovery_windows: CompanyGauntletRecoveryWindow[]; - organizational_survival_half_life: CompanyGauntletHalfLife[]; - collapse: CompanyGauntletCollapse; -} - -export interface OrganizationFullSummary { - department_count: number; - departments: Array<{ - dept_id: string; - name: string; - lead_agent_id: string; - member_agent_ids: string[]; - created_tick: number; - parent_dept_id: string | null; - }>; - role_count: number; - roles: Array<{ - role_id: string; - name: string; - holder_agent_id: string; - department_id: string | null; - }>; - rule_count: number; - active_rules: Array<{ - rule_id: string; - description: string; - created_by_agent_id: string; - active: boolean; - }>; - has_charter: boolean; -} - -export interface CompanyMarketSummary { - total_revenue_earned: number; - active_shocks: Array>; - open_demand_count: number; -} - -export interface CompanyValuationSummary { - current_valuation: number; - ipo_triggered: boolean; - ipo_progress: number; - consecutive_profitable_ticks: number; -} - -export interface CompanySpaceSummary { - stage: string; - capacity: number; - ticks_over_capacity?: number; -} - -export interface CompanyPendingSuggestion { - suggestion_id: string; - category: string; - message: string; - target_agent_id: string; - tick: number; - stage: string; -} - -export interface CompanySummary { - enabled: boolean; - name: string; - stage: string; - cash: number; - operating_cost_per_tick: number; - runway_ticks: number | null; - open_demand_count: number; - delivered_count: number; - missed_count: number; - team_size?: number; - active_contributor_count?: number; - role_claims?: Record; - artifact_count?: number; - artifact_read_count?: number; - artifact_write_count?: number; - demand_streams?: CompanyDemandSummary[]; - artifacts?: CompanyArtifactSummary[]; - organization?: CompanyOrganizationSummary; - survival_gauntlet?: CompanySurvivalGauntletSummary | null; - pending_suggestions?: CompanyPendingSuggestion[]; - org?: OrganizationFullSummary; - market?: CompanyMarketSummary; - valuation?: CompanyValuationSummary; - space?: CompanySpaceSummary; -} - -export interface WorldState { - tick: number; - agents: AgentInfo[]; - recent_events: string[]; - metrics?: WorldMetrics; - company?: CompanySummary | null; - locations?: string[]; - location_graph?: Record; -} - -export interface ScenarioInfo { - id: string; - title: string; - hypothesis: string; - counter_hypothesis: string; - tags: string[]; -} - -export interface TickResponse { - world: WorldState; - results: Array<{ success: boolean; description: string }>; -} - -export interface HistoryListResponse { - ticks: number[]; - latest_tick: number | null; -} - -export interface HistoryTickResponse { - tick: number; - world: WorldState; -} - -export interface HistoryMetaResponse { - path: string; - max_entries: number; - current_entries: number; -} - -export interface MetricsTimelinePoint { - tick: number; - metrics: WorldMetrics; -} - -export interface MetricsTimelineResponse { - points: MetricsTimelinePoint[]; -} - -export type NarrativeMode = "global" | "focused"; -export type StreamStatus = "connecting" | "live" | "offline"; -export type EventKind = "move" | "say" | "exchange" | "rest" | "other"; -export type TimelineSearchMode = "text" | "regex"; - -export interface EventDetails { - fromLocation?: string; - toLocation?: string; - message?: string; - item?: string; - qty?: number; - counterparty?: string; - verb?: string; - extra?: string; -} - -export interface DecoratedEvent { - raw: string; - kind: EventKind; - actor: string | null; - location: string | null; - tick: number | null; - details: EventDetails; -} - -export interface TimelineFilterPreset { - name: string; - eventTypeFilter: "all" | EventKind; - eventAgentFilter: string; - eventLocationFilter: string; - timelineSearch: string; - timelineSearchMode: TimelineSearchMode; - linkReplayRange: boolean; -} - -export const TIMELINE_PRESETS_STORAGE_KEY = "antelab.timeline.presets.v1"; -export const TIMELINE_BOOKMARKS_STORAGE_KEY = "antelab.timeline.bookmarks.v1"; - -export const SPEED_OPTIONS = [ - { label: "Slow", ms: 1800 }, - { label: "Normal", ms: 1000 }, - { label: "Fast", ms: 500 }, -]; - -export const REPLAY_WINDOW_OPTIONS = [10, 20, 50, 100]; - -export function formatInventory(inv: Record): string { - const items = Object.entries(inv).filter(([, qty]) => qty > 0); - if (items.length === 0) return "nothing"; - return items.map(([name, qty]) => `${name} x${qty}`).join(", "); -} - -export function classifyEvent(event: string): EventKind { - if (event.includes(" moved ")) return "move"; - if (event.includes(" says: ")) return "say"; - if (event.includes(" gave ") || event.includes(" took ") || event.includes(" picked up ")) return "exchange"; - if (event.includes(" rests")) return "rest"; - return "other"; -} - -export function findActor(event: string, agents: AgentInfo[]): string | null { - for (const agent of agents) { - if (event.includes(`] ${agent.name} `)) return agent.name; - } - return null; -} - -export function extractMoveDestination(event: string): string | null { - const match = event.match(/ to ([a-zA-Z0-9_ -]+)$/); - return match ? match[1] : null; -} - -export function isEditableTarget(target: EventTarget | null): boolean { - if (!(target instanceof HTMLElement)) return false; - const tag = target.tagName.toLowerCase(); - if (tag === "input" || tag === "textarea" || tag === "select") return true; - return target.isContentEditable; -} - -export function extractEventTick(event: string): number | null { - const match = event.match(/^\[Tick (\d+)\]/); - if (!match) return null; - return Number(match[1]); -} - -export function parseEventDetails(event: string, kind: EventKind): EventDetails { - if (kind === "move") { - const match = event.match(/ moved from (.+) to (.+)$/); - if (match) return { fromLocation: match[1], toLocation: match[2] }; - } - if (kind === "say") { - const match = event.match(/ says: "(.*)"$/); - if (match) return { message: match[1] }; - } - if (kind === "exchange") { - const gaveMatch = event.match(/ gave (\d+) ([a-zA-Z0-9_ -]+) to ([a-zA-Z0-9_ -]+)$/); - if (gaveMatch) { - return { qty: Number(gaveMatch[1]), item: gaveMatch[2], counterparty: gaveMatch[3] }; - } - const tookMatch = event.match(/ took (\d+) ([a-zA-Z0-9_ -]+) from ([a-zA-Z0-9_ -]+)$/); - if (tookMatch) { - return { qty: Number(tookMatch[1]), item: tookMatch[2], counterparty: tookMatch[3] }; - } - const pickupMatch = event.match(/ picked up (\d+) ([a-zA-Z0-9_ -]+)$/); - if (pickupMatch) { - return { qty: Number(pickupMatch[1]), item: pickupMatch[2] }; - } - } - const attemptedMatch = event.match(/ attempted '([^']+)' with (.+)$/); - if (attemptedMatch) { - return { verb: attemptedMatch[1], extra: attemptedMatch[2] }; - } - const examinedMatch = event.match(/ examined ([a-zA-Z0-9_ -]+): (.+)$/); - if (examinedMatch) { - return { counterparty: examinedMatch[1], extra: examinedMatch[2] }; - } - return {}; -} - -export function getEventBookmarkId(event: DecoratedEvent): string { - return `${event.tick ?? "na"}::${event.raw}`; -} - -/** District / map focus for observer: prefer parsed location, then actor's current tile, then move endpoints. */ -export function primaryMapLocationForDecoratedEvent(event: DecoratedEvent, agents: AgentInfo[]): string | null { - if (event.location) return event.location; - if (event.actor) { - const agent = agents.find((a) => a.name === event.actor); - if (agent) return agent.location; - } - if (event.details.toLocation) return event.details.toLocation; - if (event.details.fromLocation) return event.details.fromLocation; - return null; -} diff --git a/frontend/src/artifactWorkbench.test.ts b/frontend/src/artifactWorkbench.test.ts deleted file mode 100644 index 5e33a88..0000000 --- a/frontend/src/artifactWorkbench.test.ts +++ /dev/null @@ -1,275 +0,0 @@ -import { describe, expect, it } from "vitest"; -import { - buildArtifactDeltas, - parseArtifactJson, - renderReceiptAutopsyMarkdown, -} from "./artifactWorkbench"; - -describe("artifactWorkbench", () => { - it("parses scenario metadata and headline metrics from completed run artifacts", () => { - const result = parseArtifactJson( - JSON.stringify({ - experiment: "baseline", - scenario: { - id: "baseline", - title: "Baseline", - hypothesis: "Default physics produce the control run.", - tags: ["baseline"], - }, - config_path: "experiments/baseline.yaml", - seed: 42, - ticks: 50, - created_at: "2026-04-25T04:03:41.653903+00:00", - metadata: { - llm_mode: "mock", - config_hash: "abc123", - action_distribution: { move: 3, say: 2 }, - }, - final_metrics: { - alive_count: 8, - total_births: 1, - total_deaths: 0, - average_hunger: 2.25, - failure_rate: 0.125, - }, - }), - "baseline artifact", - ); - - expect(result.ok).toBe(true); - if (!result.ok) return; - expect(result.artifact.metadata.scenarioTitle).toBe("Baseline"); - expect(result.artifact.metadata.seed).toBe(42); - expect(result.artifact.metadata.configHash).toBe("abc123"); - expect(result.artifact.metrics.alive_count).toBe(8); - expect(result.artifact.metrics.total_communications).toBeNull(); - expect(result.artifact.actionDistribution).toEqual({ move: 3, say: 2 }); - }); - - it("uses final world and timeline fallbacks without throwing on absent metrics", () => { - const result = parseArtifactJson( - JSON.stringify({ - scenario: "silent-world", - seed: "11", - tick_count: "25", - timeline: [{ tick: 25, metrics: { alive_count: 6, average_hunger: 4 } }], - final_world: { metrics: { total_deaths: 2 } }, - }), - ); - - expect(result.ok).toBe(true); - if (!result.ok) return; - expect(result.artifact.metadata.scenarioTitle).toBe("silent-world"); - expect(result.artifact.metadata.seed).toBe(11); - expect(result.artifact.metadata.ticks).toBe(25); - expect(result.artifact.metrics.alive_count).toBe(6); - expect(result.artifact.metrics.total_deaths).toBe(2); - expect(result.artifact.metrics.average_hunger).toBe(4); - expect(result.artifact.metrics.total_births).toBeNull(); - }); - - it("reports malformed JSON as a parser result instead of throwing", () => { - const result = parseArtifactJson("{not json"); - - expect(result.ok).toBe(false); - if (result.ok) return; - expect(result.error).toContain("Malformed JSON"); - }); - - it("rejects unrelated objects with no artifact-shaped markers", () => { - const empty = parseArtifactJson("{}"); - const unrelated = parseArtifactJson(JSON.stringify({ message: "hello", count: 2 })); - - expect(empty.ok).toBe(false); - expect(unrelated.ok).toBe(false); - if (empty.ok || unrelated.ok) return; - expect(empty.error).toContain("completed experiment artifact"); - expect(unrelated.error).toContain("completed experiment artifact"); - }); - - it("rejects marker-shaped objects with no meaningful artifact data", () => { - const emptyMetrics = parseArtifactJson(JSON.stringify({ metrics: {} })); - const emptyScenario = parseArtifactJson(JSON.stringify({ scenario: {} })); - const emptyFinalWorldMetrics = parseArtifactJson(JSON.stringify({ final_world: { metrics: {} } })); - const emptyTimelineMetrics = parseArtifactJson(JSON.stringify({ timeline: [{ tick: 1, metrics: {} }] })); - - expect(emptyMetrics.ok).toBe(false); - expect(emptyScenario.ok).toBe(false); - expect(emptyFinalWorldMetrics.ok).toBe(false); - expect(emptyTimelineMetrics.ok).toBe(false); - }); - - it("accepts world snapshot metrics as an artifact-shaped marker", () => { - const result = parseArtifactJson( - JSON.stringify({ - metrics: { alive_count: 4, average_fatigue: 1.5 }, - tick: 12, - }), - ); - - expect(result.ok).toBe(true); - if (!result.ok) return; - expect(result.artifact.metrics.alive_count).toBe(4); - expect(result.artifact.metrics.average_fatigue).toBe(1.5); - }); - - it("builds deltas with explicit missing-data states", () => { - const left = parseArtifactJson(JSON.stringify({ final_metrics: { alive_count: 8, average_hunger: 2 } })); - const right = parseArtifactJson(JSON.stringify({ final_metrics: { alive_count: 5, total_births: 3 } })); - if (!left.ok || !right.ok) throw new Error("fixtures should parse"); - - const deltas = buildArtifactDeltas(left.artifact, right.artifact); - const alive = deltas.find((row) => row.key === "alive_count"); - const births = deltas.find((row) => row.key === "total_births"); - const hunger = deltas.find((row) => row.key === "average_hunger"); - - expect(alive).toMatchObject({ valueA: 8, valueB: 5, delta: -3, status: "ready" }); - expect(births).toMatchObject({ valueA: null, valueB: 3, delta: null, status: "missing-a" }); - expect(hunger).toMatchObject({ valueA: 2, valueB: null, delta: null, status: "missing-b" }); - }); - - it("parses receipt reports from completed run artifacts", () => { - const result = parseArtifactJson( - JSON.stringify({ - experiment: "receipt-smoke", - scenario: { id: "receipt", title: "Receipt Smoke" }, - seed: 7, - ticks: 12, - final_metrics: { alive_count: 3, false_completion_claim_count: 1 }, - receipts: { - run_id: "receipt-smoke-seed-7", - markdown_path: "receipt-smoke-seed-7.receipts.md", - summary: { - supported: 1, - unsupported: 1, - unknown: 0, - false_completion_claims: 1, - }, - receipts: [ - { - claim_id: "claim-7-avery-0", - claim: { - id: "claim-7-avery-0", - tick: 7, - agent_id: "avery", - kind: "completion", - text: "delivery is completed", - target: "first-prototype", - }, - status: "unsupported", - label: "FalseCompletionClaim", - supporting_actions: [], - supporting_state_changes: [], - missing_evidence: ["company.demands.first-prototype.status delivered"], - explanation: "No matching state change was found for this claim.", - }, - { - claim_id: "claim-8-mina-0", - claim: { - id: "claim-8-mina-0", - tick: 8, - agent_id: "mina", - kind: "completion", - text: "delivered prototype", - target: "first-prototype", - }, - status: "supported", - label: "ReceiptVerified", - supporting_actions: [ - { - tick: 8, - agent_id: "mina", - verb: "deliver", - success: true, - description: "Mina delivered prototype", - events: ["[Tick 8] Mina delivered prototype for first-prototype"], - }, - ], - supporting_state_changes: [ - { - tick: 8, - path: "company.demands.first-prototype.status", - before: "open", - after: "delivered", - }, - ], - missing_evidence: [], - explanation: "The claim is backed by matching action and state-change evidence.", - }, - ], - failures: [ - { - claim_id: "claim-7-avery-0", - tick: 7, - agent_id: "avery", - claim: "delivery is completed", - status: "unsupported", - label: "FalseCompletionClaim", - missing_evidence: ["company.demands.first-prototype.status delivered"], - explanation: "No matching state change was found for this claim.", - }, - ], - }, - }), - "receipt artifact", - ); - - expect(result.ok).toBe(true); - if (!result.ok) return; - const report = result.artifact.receiptReport; - - expect(report?.runId).toBe("receipt-smoke-seed-7"); - expect(report?.markdownPath).toBe("receipt-smoke-seed-7.receipts.md"); - expect(report?.summary.falseCompletionClaims).toBe(1); - expect(report?.receipts).toHaveLength(2); - expect(report?.receipts[0]).toMatchObject({ - claimId: "claim-7-avery-0", - tick: 7, - agentId: "avery", - status: "unsupported", - label: "FalseCompletionClaim", - claimText: "delivery is completed", - missingEvidence: ["company.demands.first-prototype.status delivered"], - }); - expect(report?.receipts[1].supportingStateChanges[0]).toMatchObject({ - tick: 8, - path: "company.demands.first-prototype.status", - before: "open", - after: "delivered", - }); - }); - - it("renders an imported receipt report as exportable markdown", () => { - const result = parseArtifactJson( - JSON.stringify({ - final_metrics: { alive_count: 1 }, - receipts: { - run_id: "run-1", - summary: { supported: 0, unsupported: 1, unknown: 0, false_completion_claims: 1 }, - receipts: [ - { - claim_id: "claim-1-a-0", - claim: { id: "claim-1-a-0", tick: 1, agent_id: "a", kind: "completion", text: "done" }, - status: "unsupported", - label: "FalseCompletionClaim", - missing_evidence: ["state change for deliver"], - explanation: "No matching state change was found for this claim.", - }, - ], - }, - }), - ); - - expect(result.ok).toBe(true); - if (!result.ok) return; - expect(result.artifact.receiptReport).not.toBeNull(); - if (!result.artifact.receiptReport) return; - - const markdown = renderReceiptAutopsyMarkdown(result.artifact.receiptReport, result.artifact.metadata); - - expect(markdown).toContain("# Agent Receipt Autopsy"); - expect(markdown).toContain("- Run ID: run-1"); - expect(markdown).toContain("FalseCompletionClaim"); - expect(markdown).toContain("state change for deliver"); - }); -}); diff --git a/frontend/src/artifactWorkbench.ts b/frontend/src/artifactWorkbench.ts deleted file mode 100644 index d611032..0000000 --- a/frontend/src/artifactWorkbench.ts +++ /dev/null @@ -1,475 +0,0 @@ -export type ArtifactDeltaStatus = "ready" | "missing-a" | "missing-b" | "missing-both"; - -export interface ArtifactMetricDefinition { - key: string; - label: string; - precision?: number; - format?: "number" | "percent"; -} - -export interface ArtifactMetadata { - experiment: string | null; - scenarioId: string | null; - scenarioTitle: string | null; - hypothesis: string | null; - tags: string[]; - configPath: string | null; - seed: number | null; - ticks: number | null; - createdAt: string | null; - configHash: string | null; - llmMode: string | null; - llmModel: string | null; -} - -export interface ParsedArtifact { - sourceLabel: string; - metadata: ArtifactMetadata; - metrics: Record; - actionDistribution: Record | null; - receiptReport: ParsedReceiptReport | null; -} - -export type ArtifactParseResult = { ok: true; artifact: ParsedArtifact } | { ok: false; error: string }; - -export interface ArtifactDeltaRow extends ArtifactMetricDefinition { - valueA: number | null; - valueB: number | null; - delta: number | null; - status: ArtifactDeltaStatus; -} - -export type ParsedReceiptStatus = "supported" | "unsupported" | "unknown"; - -export interface ParsedReceiptSummary { - supported: number; - unsupported: number; - unknown: number; - falseCompletionClaims: number; -} - -export interface ParsedReceiptAction { - tick: number | null; - agentId: string | null; - verb: string | null; - success: boolean | null; - description: string | null; - events: string[]; -} - -export interface ParsedReceiptStateChange { - tick: number | null; - path: string; - before: unknown; - after: unknown; -} - -export interface ParsedReceiptRow { - claimId: string; - tick: number | null; - agentId: string | null; - status: ParsedReceiptStatus; - label: string; - claimText: string; - target: string | null; - missingEvidence: string[]; - supportingActions: ParsedReceiptAction[]; - supportingStateChanges: ParsedReceiptStateChange[]; - explanation: string; -} - -export interface ParsedReceiptReport { - runId: string | null; - markdownPath: string | null; - summary: ParsedReceiptSummary; - receipts: ParsedReceiptRow[]; - failures: ParsedReceiptRow[]; -} - -type JsonObject = Record; - -export const ARTIFACT_HEADLINE_METRICS: ArtifactMetricDefinition[] = [ - { key: "alive_count", label: "Alive", precision: 0 }, - { key: "total_births", label: "Births", precision: 0 }, - { key: "total_deaths", label: "Deaths", precision: 0 }, - { key: "average_hunger", label: "Avg hunger", precision: 2 }, - { key: "average_fatigue", label: "Avg fatigue", precision: 2 }, - { key: "total_communications", label: "Communications", precision: 0 }, - { key: "total_resource_transfers", label: "Resource transfers", precision: 0 }, - { key: "total_failed_actions", label: "Failed actions", precision: 0 }, - { key: "failure_rate", label: "Failure rate", precision: 2, format: "percent" }, -]; - -export function parseArtifactJson(input: string, sourceLabel = "Pasted artifact"): ArtifactParseResult { - let parsed: unknown; - try { - parsed = JSON.parse(input); - } catch (error) { - const message = error instanceof Error ? error.message : "unknown parse error"; - return { ok: false, error: `Malformed JSON: ${message}` }; - } - - if (!isRecord(parsed)) { - return { ok: false, error: "Artifact JSON must be an object." }; - } - - if (!hasArtifactShape(parsed)) { - return { - ok: false, - error: "Artifact JSON does not look like a completed experiment artifact. Expected scenario/experiment metadata, final metrics, measurement series, or world snapshot metrics.", - }; - } - - return { ok: true, artifact: parseArtifactObject(parsed, sourceLabel) }; -} - -export function buildArtifactDeltas(artifactA: ParsedArtifact | null, artifactB: ParsedArtifact | null): ArtifactDeltaRow[] { - return ARTIFACT_HEADLINE_METRICS.map((definition) => { - const valueA = artifactA?.metrics[definition.key] ?? null; - const valueB = artifactB?.metrics[definition.key] ?? null; - return { - ...definition, - valueA, - valueB, - delta: valueA === null || valueB === null ? null : valueB - valueA, - status: deltaStatus(valueA, valueB), - }; - }); -} - -export function formatArtifactMetric(value: number | null, definition: ArtifactMetricDefinition): string { - if (value === null) return "missing"; - if (definition.format === "percent") return `${(value * 100).toFixed(definition.precision ?? 1)}%`; - if (definition.precision === 0) return Math.round(value).toLocaleString(); - return value.toFixed(definition.precision ?? 2); -} - -function parseArtifactObject(raw: JsonObject, sourceLabel: string): ParsedArtifact { - const metadata = readMetadata(raw); - const metrics = readHeadlineMetrics(raw); - const actionDistribution = readNumberMap(pathRecord(raw, ["metadata"])?.action_distribution); - const receiptReport = readReceiptReport(raw); - - return { - sourceLabel, - metadata, - metrics, - actionDistribution, - receiptReport, - }; -} - -function readMetadata(raw: JsonObject): ArtifactMetadata { - const scenario = pathRecord(raw, ["scenario"]); - const metadata = pathRecord(raw, ["metadata"]); - - return { - experiment: readString(raw.experiment), - scenarioId: scenario ? readString(scenario.id) : null, - scenarioTitle: scenario ? readString(scenario.title) ?? readString(scenario.id) : readString(raw.scenario), - hypothesis: scenario ? readString(scenario.hypothesis) : null, - tags: scenario ? readStringArray(scenario.tags) : [], - configPath: readString(raw.config_path) ?? readString(raw.configPath), - seed: readNumber(raw.seed), - ticks: readNumber(raw.ticks) ?? readNumber(raw.tick_count) ?? readNumber(raw.tickCount) ?? readNumber(pathRecord(raw, ["final_world"])?.tick), - createdAt: readString(raw.created_at) ?? readString(raw.createdAt), - configHash: readString(metadata?.config_hash) ?? readString(metadata?.configHash), - llmMode: readString(metadata?.llm_mode) ?? readString(metadata?.llmMode), - llmModel: readString(metadata?.llm_model) ?? readString(metadata?.llmModel), - }; -} - -function readHeadlineMetrics(raw: JsonObject): Record { - const finalMetrics = pathRecord(raw, ["final_metrics"]); - const finalWorldMetrics = pathRecord(raw, ["final_world", "metrics"]); - const worldSnapshotMetrics = pathRecord(raw, ["metrics"]); - const latestTimelineMetrics = latestTimelineMetricsRecord(raw); - const latestMeasurementMetrics = latestMeasurementMetricsRecord(raw); - - return Object.fromEntries( - ARTIFACT_HEADLINE_METRICS.map((definition) => [ - definition.key, - readNumber(finalMetrics?.[definition.key]) ?? - readNumber(finalWorldMetrics?.[definition.key]) ?? - readNumber(worldSnapshotMetrics?.[definition.key]) ?? - readNumber(latestTimelineMetrics?.[definition.key]) ?? - readNumber(latestMeasurementMetrics?.[definition.key]) ?? - null, - ]), - ); -} - -function hasArtifactShape(raw: JsonObject): boolean { - return Boolean( - readString(raw.experiment) || - readString(raw.scenario) || - hasScenarioMetadata(raw) || - hasReceiptReport(raw) || - hasRecognizedMetric(pathRecord(raw, ["final_metrics"])) || - hasRecognizedMetric(pathRecord(raw, ["final_world", "metrics"])) || - hasRecognizedMetric(pathRecord(raw, ["metrics"])) || - hasRecognizedMetric(latestMeasurementMetricsRecord(raw)) || - hasRecognizedMetric(latestTimelineMetricsRecord(raw)), - ); -} - -function hasReceiptReport(raw: JsonObject): boolean { - const receipts = pathRecord(raw, ["receipts"]); - return Boolean( - receipts && - ( - readString(receipts.run_id) || - Array.isArray(receipts.receipts) || - Array.isArray(receipts.failures) || - pathRecord(receipts, ["summary"]) - ), - ); -} - -function readReceiptReport(raw: JsonObject): ParsedReceiptReport | null { - const receiptsRecord = pathRecord(raw, ["receipts"]); - if (!receiptsRecord) return null; - - const rows = readRecordArray(receiptsRecord.receipts) - .map(readReceiptRow) - .filter((row): row is ParsedReceiptRow => row !== null); - const derivedFailures = rows.filter((row) => row.status === "unsupported" || (row.status === "unknown" && row.label === "ReceiptMissing")); - const summary = readReceiptSummary(pathRecord(receiptsRecord, ["summary"]), rows); - - if ( - rows.length === 0 && - derivedFailures.length === 0 && - summary.supported === 0 && - summary.unsupported === 0 && - summary.unknown === 0 && - summary.falseCompletionClaims === 0 - ) { - return null; - } - - return { - runId: readString(receiptsRecord.run_id), - markdownPath: readString(receiptsRecord.markdown_path), - summary, - receipts: rows, - failures: derivedFailures, - }; -} - -function readReceiptSummary(summaryRecord: JsonObject | null, rows: ParsedReceiptRow[]): ParsedReceiptSummary { - return { - supported: readInteger(summaryRecord?.supported) ?? rows.filter((row) => row.status === "supported").length, - unsupported: readInteger(summaryRecord?.unsupported) ?? rows.filter((row) => row.status === "unsupported").length, - unknown: readInteger(summaryRecord?.unknown) ?? rows.filter((row) => row.status === "unknown").length, - falseCompletionClaims: readInteger(summaryRecord?.false_completion_claims) ?? rows.filter((row) => row.label === "FalseCompletionClaim").length, - }; -} - -function readReceiptRow(raw: JsonObject): ParsedReceiptRow | null { - const claim = pathRecord(raw, ["claim"]); - const claimId = readString(raw.claim_id) ?? readString(claim?.id); - const status = readReceiptStatus(raw.status); - const label = readString(raw.label); - const claimText = readString(claim?.text) ?? readString(raw.claim); - - if (!claimId || !status || !label || !claimText) return null; - - return { - claimId, - tick: readNumber(claim?.tick) ?? readNumber(raw.tick), - agentId: readString(claim?.agent_id) ?? readString(raw.agent_id), - status, - label, - claimText, - target: readString(claim?.target), - missingEvidence: readStringArray(raw.missing_evidence), - supportingActions: readRecordArray(raw.supporting_actions).map(readReceiptAction), - supportingStateChanges: readRecordArray(raw.supporting_state_changes).map(readReceiptStateChange).filter((item): item is ParsedReceiptStateChange => item !== null), - explanation: readString(raw.explanation) ?? "", - }; -} - -function readReceiptAction(raw: JsonObject): ParsedReceiptAction { - return { - tick: readNumber(raw.tick), - agentId: readString(raw.agent_id), - verb: readString(raw.verb), - success: typeof raw.success === "boolean" ? raw.success : null, - description: readString(raw.description), - events: readStringArray(raw.events), - }; -} - -function readReceiptStateChange(raw: JsonObject): ParsedReceiptStateChange | null { - const path = readString(raw.path); - if (!path) return null; - return { - tick: readNumber(raw.tick), - path, - before: raw.before, - after: raw.after, - }; -} - -function readReceiptStatus(value: unknown): ParsedReceiptStatus | null { - return value === "supported" || value === "unsupported" || value === "unknown" ? value : null; -} - -export function renderReceiptAutopsyMarkdown( - report: ParsedReceiptReport, - metadata?: ArtifactMetadata, -): string { - const lines = [ - "# Agent Receipt Autopsy", - "", - `- Run ID: ${report.runId ?? "unknown"}`, - `- Scenario: ${metadata?.scenarioTitle ?? metadata?.scenarioId ?? metadata?.experiment ?? "unknown"}`, - `- Seed: ${metadata?.seed ?? "unknown"}`, - `- Ticks: ${metadata?.ticks ?? "unknown"}`, - "", - "## Summary", - "", - `- Supported: ${report.summary.supported}`, - `- Unsupported: ${report.summary.unsupported}`, - `- Unknown: ${report.summary.unknown}`, - `- False completion claims: ${report.summary.falseCompletionClaims}`, - "", - "## Failed Receipts", - "", - ]; - - const failed = report.failures.length > 0 ? report.failures : report.receipts.filter((receipt) => receipt.status !== "supported"); - if (failed.length === 0) { - lines.push("- None"); - } else { - for (const receipt of failed) { - lines.push(`- Tick ${formatNullable(receipt.tick)} agent ${receipt.agentId ?? "unknown"}: ${receipt.claimText} [${receipt.label}]`); - if (receipt.missingEvidence.length > 0) { - lines.push(` - Missing evidence: ${receipt.missingEvidence.join(", ")}`); - } - if (receipt.explanation) lines.push(` - Explanation: ${receipt.explanation}`); - } - } - - lines.push("", "## Supported Receipts", ""); - const supported = report.receipts.filter((receipt) => receipt.status === "supported"); - if (supported.length === 0) { - lines.push("- None"); - } else { - for (const receipt of supported) { - const changes = receipt.supportingStateChanges.map((change) => `${change.path}: ${formatEvidenceValue(change.before)} -> ${formatEvidenceValue(change.after)}`); - lines.push(`- Tick ${formatNullable(receipt.tick)} agent ${receipt.agentId ?? "unknown"}: ${receipt.claimText}`); - if (changes.length > 0) lines.push(` - State changes: ${changes.join("; ")}`); - if (receipt.supportingActions.length > 0) { - lines.push(` - Actions: ${receipt.supportingActions.map((action) => action.verb ?? "unknown").join(", ")}`); - } - } - } - - return `${lines.join("\n")}\n`; -} - -export function receiptAutopsyFilename(report: ParsedReceiptReport, sourceLabel = "receipt-artifact"): string { - const base = report.runId ?? report.markdownPath?.replace(/\.md$/i, "") ?? sourceLabel; - return `${base.replace(/[^a-zA-Z0-9._-]+/g, "-").replace(/^-+|-+$/g, "") || "receipt-autopsy"}.receipts.md`; -} - -function hasScenarioMetadata(raw: JsonObject): boolean { - const scenario = pathRecord(raw, ["scenario"]); - return Boolean(scenario && (readString(scenario.id) || readString(scenario.title) || readString(scenario.name))); -} - -function hasRecognizedMetric(metrics: JsonObject | null): boolean { - if (!metrics) return false; - return ARTIFACT_HEADLINE_METRICS.some((definition) => readNumber(metrics[definition.key]) !== null); -} - -function latestTimelineMetricsRecord(raw: JsonObject): JsonObject | null { - if (!Array.isArray(raw.timeline)) return null; - for (let index = raw.timeline.length - 1; index >= 0; index -= 1) { - const entry = raw.timeline[index]; - if (!isRecord(entry)) continue; - const metrics = entry.metrics; - if (isRecord(metrics)) return metrics; - } - return null; -} - -function latestMeasurementMetricsRecord(raw: JsonObject): JsonObject | null { - if (!Array.isArray(raw.measurement_series)) return null; - for (let index = raw.measurement_series.length - 1; index >= 0; index -= 1) { - const entry = raw.measurement_series[index]; - if (isRecord(entry)) return entry; - } - return null; -} - -function readNumberMap(value: unknown): Record | null { - if (!isRecord(value)) return null; - const entries = Object.entries(value) - .map(([key, rawValue]) => [key, readNumber(rawValue)] as const) - .filter((entry): entry is readonly [string, number] => entry[1] !== null); - return entries.length > 0 ? Object.fromEntries(entries) : null; -} - -function readRecordArray(value: unknown): JsonObject[] { - if (!Array.isArray(value)) return []; - return value.filter(isRecord); -} - -function deltaStatus(valueA: number | null, valueB: number | null): ArtifactDeltaStatus { - if (valueA === null && valueB === null) return "missing-both"; - if (valueA === null) return "missing-a"; - if (valueB === null) return "missing-b"; - return "ready"; -} - -function pathRecord(raw: JsonObject, path: string[]): JsonObject | null { - let current: unknown = raw; - for (const key of path) { - if (!isRecord(current)) return null; - current = current[key]; - } - return isRecord(current) ? current : null; -} - -function readString(value: unknown): string | null { - return typeof value === "string" && value.trim().length > 0 ? value : null; -} - -function readStringArray(value: unknown): string[] { - if (!Array.isArray(value)) return []; - return value.filter((item): item is string => typeof item === "string" && item.trim().length > 0); -} - -function readNumber(value: unknown): number | null { - if (typeof value === "number" && Number.isFinite(value)) return value; - if (typeof value === "string" && value.trim().length > 0) { - const parsed = Number(value); - return Number.isFinite(parsed) ? parsed : null; - } - return null; -} - -function readInteger(value: unknown): number | null { - const number = readNumber(value); - return number === null ? null : Math.trunc(number); -} - -function formatNullable(value: number | null): string { - return value === null ? "unknown" : String(value); -} - -function formatEvidenceValue(value: unknown): string { - if (typeof value === "string") return value; - if (typeof value === "number" || typeof value === "boolean" || value == null) return String(value); - try { - return JSON.stringify(value); - } catch { - return "[unserializable]"; - } -} - -function isRecord(value: unknown): value is JsonObject { - return Boolean(value) && typeof value === "object" && !Array.isArray(value); -} diff --git a/frontend/src/bookmarkImport.test.ts b/frontend/src/bookmarkImport.test.ts deleted file mode 100644 index a2c509e..0000000 --- a/frontend/src/bookmarkImport.test.ts +++ /dev/null @@ -1,107 +0,0 @@ -import { describe, expect, it } from "vitest"; -import { - applyBookmarkImportMode, - computeBookmarkImportPreview, - parseBookmarkImportPayload, - type EventBookmark, -} from "./bookmarkImport"; - -function makeBookmark(overrides: Partial = {}): EventBookmark { - return { - id: overrides.id ?? "1::event", - raw: overrides.raw ?? "event", - tick: overrides.tick ?? 1, - tag: overrides.tag ?? "general", - createdAt: overrides.createdAt ?? 100, - updatedAt: overrides.updatedAt ?? "2026-01-01T00:00:00.000Z", - revision: overrides.revision ?? 1, - }; -} - -describe("parseBookmarkImportPayload", () => { - it("accepts legacy v1 payload without schemaVersion", () => { - const payload = JSON.stringify({ - version: 1, - bookmarks: [{ id: "1::event", raw: "event", tick: 1, tag: "general", createdAt: 5 }], - }); - const result = parseBookmarkImportPayload(payload, () => 1000); - expect(result.schemaVersion).toBe(1); - expect(result.bookmarks).toHaveLength(1); - expect(result.bookmarks[0]?.id).toBe("1::event"); - }); - - it("rejects unsupported schema version", () => { - const payload = JSON.stringify({ schemaVersion: 99, bookmarks: [] }); - expect(() => parseBookmarkImportPayload(payload, () => 1000)).toThrow("unsupported schema version"); - }); -}); - -describe("bookmark import modes", () => { - it("preview mode provides diff summary without mutating local bookmarks", () => { - const local = [makeBookmark({ id: "1::A", raw: "A" })]; - const incoming = [makeBookmark({ id: "1::A", raw: "A2", revision: 2 }), makeBookmark({ id: "2::B", raw: "B" })]; - const preview = computeBookmarkImportPreview(local, incoming); - expect(preview.summary).toEqual({ - added: 1, - updated: 1, - unchanged: 0, - skipped: 0, - invalid: 0, - }); - expect(preview.previewResult.map((item) => item.id)).toEqual(["1::A", "2::B"]); - expect(local.map((item) => item.id)).toEqual(["1::A"]); - expect(preview.details).toHaveLength(2); - expect(preview.details[0]).toMatchObject({ - id: "1::A", - action: "updated", - reason: "revision", - }); - expect(preview.details[1]).toMatchObject({ - id: "2::B", - action: "added", - reason: "new", - }); - }); - - it("merge mode resolves conflict by revision then updatedAt", () => { - const local = [ - makeBookmark({ id: "1::A", raw: "A-local", revision: 1, updatedAt: "2026-01-01T00:00:00.000Z" }), - makeBookmark({ id: "2::B", raw: "B-local", revision: 3, updatedAt: "2026-01-03T00:00:00.000Z" }), - ]; - const incoming = [ - makeBookmark({ id: "1::A", raw: "A-incoming", revision: 2, updatedAt: "2026-01-02T00:00:00.000Z" }), - makeBookmark({ id: "2::B", raw: "B-incoming", revision: 3, updatedAt: "2026-01-02T00:00:00.000Z" }), - makeBookmark({ id: "3::C", raw: "C-incoming", revision: 1 }), - ]; - const result = applyBookmarkImportMode(local, incoming, "merge"); - expect(result.nextBookmarks.find((item) => item.id === "1::A")?.raw).toBe("A-incoming"); - expect(result.nextBookmarks.find((item) => item.id === "2::B")?.raw).toBe("B-local"); - expect(result.nextBookmarks.find((item) => item.id === "3::C")?.raw).toBe("C-incoming"); - expect(result.summary.updated).toBe(1); - expect(result.summary.skipped).toBe(1); - expect(result.details).toHaveLength(3); - expect(result.details.find((detail) => detail.id === "1::A")).toMatchObject({ - action: "updated", - reason: "revision", - }); - expect(result.details.find((detail) => detail.id === "2::B")).toMatchObject({ - action: "skipped", - reason: "updatedAt", - }); - }); - - it("replace mode fully replaces local bookmarks and keeps capacity at 12", () => { - const local = [makeBookmark({ id: "old::1", raw: "old" })]; - const incoming = Array.from({ length: 14 }).map((_, idx) => - makeBookmark({ - id: `new::${idx}`, - raw: `new-${idx}`, - revision: idx, - updatedAt: `2026-01-${String((idx % 9) + 1).padStart(2, "0")}T00:00:00.000Z`, - }), - ); - const result = applyBookmarkImportMode(local, incoming, "replace"); - expect(result.nextBookmarks).toHaveLength(12); - expect(result.nextBookmarks.some((item) => item.id === "old::1")).toBe(false); - }); -}); diff --git a/frontend/src/bookmarkImport.ts b/frontend/src/bookmarkImport.ts deleted file mode 100644 index 8306da1..0000000 --- a/frontend/src/bookmarkImport.ts +++ /dev/null @@ -1,267 +0,0 @@ -export type BookmarkTag = "general" | "conflict" | "resource" | "movement" | "social"; -export type BookmarkImportMode = "replace" | "merge" | "preview_diff"; - -export interface EventBookmark { - id: string; - raw: string; - tick: number | null; - tag: BookmarkTag; - createdAt: number; - updatedAt: string; - revision: number; -} - -export interface BookmarkImportSummary { - added: number; - updated: number; - unchanged: number; - skipped: number; - invalid: number; -} - -export interface BookmarkImportResult { - summary: BookmarkImportSummary; - nextBookmarks: EventBookmark[]; - previewResult: EventBookmark[]; - details: BookmarkImportDetail[]; -} - -export type BookmarkImportDetailAction = "added" | "updated" | "unchanged" | "skipped"; -export type BookmarkImportDetailReason = "new" | "revision" | "updatedAt" | "identical" | "fallback"; - -export interface BookmarkImportDetail { - id: string; - action: BookmarkImportDetailAction; - reason: BookmarkImportDetailReason; - incoming: EventBookmark; - local: EventBookmark | null; -} - -interface BookmarkPayloadV2 { - schemaVersion?: number; - setId?: string; - setName?: string; - exportedAt?: string; - source?: string; - bookmarks?: Array>; -} - -interface BookmarkPayloadV1 { - version?: number; - exportedAt?: string; - bookmarks?: Array>; -} - -export interface ParsedBookmarkImportPayload { - schemaVersion: number; - bookmarks: EventBookmark[]; - invalidCount: number; -} - -export const BOOKMARK_TAGS: BookmarkTag[] = ["general", "conflict", "resource", "movement", "social"]; -const MAX_BOOKMARKS = 12; - -function isValidIsoDate(input: string): boolean { - return !Number.isNaN(Date.parse(input)); -} - -function parseIsoTs(input: string): number { - const value = Date.parse(input); - return Number.isNaN(value) ? 0 : value; -} - -function trimBookmarks(input: EventBookmark[]): EventBookmark[] { - return input - .map((bookmark, index) => ({ bookmark, index })) - .sort((a, b) => { - const tsDiff = parseIsoTs(b.bookmark.updatedAt) - parseIsoTs(a.bookmark.updatedAt); - if (tsDiff !== 0) return tsDiff; - return a.index - b.index; - }) - .slice(0, MAX_BOOKMARKS) - .map((entry) => entry.bookmark); -} - -function sameBookmarkContent(a: EventBookmark, b: EventBookmark): boolean { - return a.raw === b.raw && a.tick === b.tick && a.tag === b.tag; -} - -function compareBookmarkPreference( - local: EventBookmark, - incoming: EventBookmark, -): { preferIncoming: boolean; reason: BookmarkImportDetailReason } { - if (incoming.revision !== local.revision) { - return { - preferIncoming: incoming.revision > local.revision, - reason: "revision", - }; - } - const incomingTs = parseIsoTs(incoming.updatedAt); - const localTs = parseIsoTs(local.updatedAt); - if (incomingTs !== localTs) { - return { - preferIncoming: incomingTs > localTs, - reason: "updatedAt", - }; - } - return { preferIncoming: true, reason: "fallback" }; -} - -export function normalizeEventBookmark(input: Partial, now: () => number = Date.now): EventBookmark | null { - if (typeof input.id !== "string" || typeof input.raw !== "string") return null; - const createdAt = typeof input.createdAt === "number" ? input.createdAt : now(); - const updatedAt = - typeof input.updatedAt === "string" && isValidIsoDate(input.updatedAt) - ? input.updatedAt - : new Date(createdAt).toISOString(); - const revision = - typeof input.revision === "number" && Number.isFinite(input.revision) && input.revision >= 0 - ? Math.floor(input.revision) - : 0; - const tag = BOOKMARK_TAGS.includes(input.tag as BookmarkTag) ? (input.tag as BookmarkTag) : "general"; - return { - id: input.id, - raw: input.raw, - tick: typeof input.tick === "number" ? input.tick : null, - tag, - createdAt, - updatedAt, - revision, - }; -} - -export function parseBookmarkImportPayload(rawText: string, now: () => number = Date.now): ParsedBookmarkImportPayload { - const parsed = JSON.parse(rawText) as BookmarkPayloadV2 | BookmarkPayloadV1 | Array>; - const container = Array.isArray(parsed) ? { schemaVersion: 1, bookmarks: parsed } : parsed; - const schemaVersion = - "schemaVersion" in container && typeof container.schemaVersion === "number" ? container.schemaVersion : 1; - if (schemaVersion > 2) { - throw new Error("unsupported schema version"); - } - if (!Array.isArray(container.bookmarks)) { - throw new Error("invalid file format"); - } - const normalized = container.bookmarks - .map((bookmark) => normalizeEventBookmark(bookmark, now)) - .filter((bookmark): bookmark is EventBookmark => bookmark !== null); - return { - schemaVersion, - bookmarks: normalized, - invalidCount: container.bookmarks.length - normalized.length, - }; -} - -export function computeBookmarkImportPreview( - localBookmarks: EventBookmark[], - incomingBookmarks: EventBookmark[], - invalidCount = 0, -): BookmarkImportResult { - const summary: BookmarkImportSummary = { - added: 0, - updated: 0, - unchanged: 0, - skipped: 0, - invalid: invalidCount, - }; - const details: BookmarkImportDetail[] = []; - const merged = [...localBookmarks]; - const byId = new Map(merged.map((bookmark, index) => [bookmark.id, index])); - for (const incoming of incomingBookmarks) { - const existingIndex = byId.get(incoming.id); - if (existingIndex === undefined) { - summary.added += 1; - byId.set(incoming.id, merged.length); - merged.push(incoming); - details.push({ - id: incoming.id, - action: "added", - reason: "new", - incoming, - local: null, - }); - continue; - } - const existing = merged[existingIndex]; - if (sameBookmarkContent(existing, incoming)) { - summary.unchanged += 1; - details.push({ - id: incoming.id, - action: "unchanged", - reason: "identical", - incoming, - local: existing, - }); - continue; - } - const preference = compareBookmarkPreference(existing, incoming); - if (preference.preferIncoming) { - summary.updated += 1; - merged[existingIndex] = incoming; - details.push({ - id: incoming.id, - action: "updated", - reason: preference.reason, - incoming, - local: existing, - }); - continue; - } - summary.skipped += 1; - details.push({ - id: incoming.id, - action: "skipped", - reason: preference.reason, - incoming, - local: existing, - }); - } - return { - summary, - previewResult: trimBookmarks(merged), - nextBookmarks: trimBookmarks(merged), - details, - }; -} - -export function applyBookmarkImportMode( - localBookmarks: EventBookmark[], - incomingBookmarks: EventBookmark[], - mode: Exclude, - invalidCount = 0, -): BookmarkImportResult { - if (mode === "replace") { - const details: BookmarkImportDetail[] = incomingBookmarks.map((incoming) => ({ - id: incoming.id, - action: "added", - reason: "new", - incoming, - local: null, - })); - return { - summary: { - added: incomingBookmarks.length, - updated: 0, - unchanged: 0, - skipped: 0, - invalid: invalidCount, - }, - nextBookmarks: trimBookmarks(incomingBookmarks), - previewResult: trimBookmarks(incomingBookmarks), - details, - }; - } - return computeBookmarkImportPreview(localBookmarks, incomingBookmarks, invalidCount); -} - -export function buildBookmarkExportPayload(bookmarks: EventBookmark[]): string { - return JSON.stringify( - { - schemaVersion: 2, - setId: crypto.randomUUID(), - exportedAt: new Date().toISOString(), - bookmarks, - }, - null, - 2, - ); -} diff --git a/frontend/src/cast/companyCast.ts b/frontend/src/cast/companyCast.ts deleted file mode 100644 index 78bfe40..0000000 --- a/frontend/src/cast/companyCast.ts +++ /dev/null @@ -1,61 +0,0 @@ -import YAML from "yaml"; - -/** Canon YAML under repo `cast/company/*.yaml` (bundled at build time). */ -export interface SeasonCastMember { - id: string; - display_name: string; - age: number; - arc: string; - backstory: string; - personality_keywords: string[]; - secret_goal: string; - relationships: Record; - portrait?: string; -} - -function loadSeasonCast(): { - byDisplayName: Map; - byId: Map; -} { - const byDisplayName = new Map(); - const byId = new Map(); - const modules = import.meta.glob("../../../cast/company/*.yaml", { - query: "?raw", - import: "default", - eager: true, - }) as Record; - - for (const [path, raw] of Object.entries(modules)) { - if (path.includes("/README") || path.endsWith("/README.yaml")) continue; - try { - const doc = YAML.parse(raw) as SeasonCastMember; - if (doc?.id && doc?.display_name) { - byDisplayName.set(doc.display_name, doc); - byId.set(doc.id, doc); - } - } catch (e) { - console.warn("[cast] parse failed:", path, e); - } - } - return { byDisplayName, byId }; -} - -const loaded = loadSeasonCast(); - -export const CAST_BY_DISPLAY_NAME = loaded.byDisplayName; -export const CAST_BY_ID = loaded.byId; - -export function getCastMemberByName(displayName: string): SeasonCastMember | undefined { - return CAST_BY_DISPLAY_NAME.get(displayName); -} - -export function resolvePeerDisplayName(peerId: string): string { - return CAST_BY_ID.get(peerId)?.display_name ?? peerId; -} - -/** Public URL for portrait when file exists under `frontend/public/cast/company/`. */ -export function portraitPublicUrl(member: SeasonCastMember): string | null { - if (!member.portrait?.trim()) return null; - const trimmed = member.portrait.replace(/^\.\//, ""); - return `/cast/company/${trimmed}`; -} diff --git a/frontend/src/components/AgentHaloLayer.tsx b/frontend/src/components/AgentHaloLayer.tsx deleted file mode 100644 index e9b31c0..0000000 --- a/frontend/src/components/AgentHaloLayer.tsx +++ /dev/null @@ -1,109 +0,0 @@ -export interface AgentHalo { - id: string; - screenX: number; - screenY: number; - faction: "amber" | "mint" | "violet" | "cyan"; - active: boolean; - alive: boolean; -} - -interface AgentHaloLayerProps { - halos: AgentHalo[]; -} - -const FACTION_CSS: Record = { - amber: "var(--w-faction-amber)", - mint: "var(--w-faction-mint)", - violet: "var(--w-faction-violet)", - cyan: "var(--w-faction-cyan)", -}; - -export function AgentHaloLayer({ halos }: AgentHaloLayerProps) { - return ( -
- {halos.map((h) => { - if (!h.alive) { - return ( -
-
-
- ); - } - - if (!h.active) { - return ( -
-
-
- ); - } - - const color = FACTION_CSS[h.faction]; - return ( -
-
-
-
- ); - })} -
- ); -} - -/** Convert world coords (0-1) to screen coords using the same transform as PixiJS */ -export function worldToScreen( - wx: number, - wy: number, - camera: { x: number; y: number; zoom: number }, - containerWidth: number, - containerHeight: number, -): { x: number; y: number } { - void containerWidth; - void containerHeight; - const STAGE_WIDTH = 1000; - const STAGE_HEIGHT = 700; - const WORLD_SPREAD_X = 1.26; - const WORLD_SPREAD_Y = 1.22; - const WORLD_Y_OFFSET = 34; - - const sx = wx * STAGE_WIDTH; - const sy = wy * STAGE_HEIGHT; - const spreadX = (sx - STAGE_WIDTH * 0.5) * WORLD_SPREAD_X + STAGE_WIDTH * 0.5; - const spreadY = (sy - STAGE_HEIGHT * 0.5) * WORLD_SPREAD_Y + STAGE_HEIGHT * 0.5 + WORLD_Y_OFFSET; - - const canvasX = spreadX * camera.zoom + camera.x; - const canvasY = spreadY * camera.zoom + camera.y; - - // Canvas coords → container CSS coords. - // PixiJS resizeTo makes canvas CSS size match container, and autoDensity - // handles devicePixelRatio. Stage uses logical pixels equal to CSS pixels. - return { x: canvasX, y: canvasY }; -} diff --git a/frontend/src/components/CastStrip.tsx b/frontend/src/components/CastStrip.tsx deleted file mode 100644 index 9b0e534..0000000 --- a/frontend/src/components/CastStrip.tsx +++ /dev/null @@ -1,62 +0,0 @@ -import type { AgentInfo } from "../appModel"; -import "../styles/cast-strip.css"; - -type Faction = "amber" | "mint" | "violet" | "cyan"; - -interface CastStripProps { - agents: AgentInfo[]; - selectedAgentId: string | null; - agentFactions: Record; - onSelectAgent: (id: string) => void; -} - -function statusLabel(agent: AgentInfo): string { - if (agent.alive === false) return "LOST"; - if ((agent.vitality ?? 1) < 0.15) return "CRIT"; - if ((agent.vitality ?? 1) < 0.3) return "LOW"; - if (!agent.last_action) return "QUIET"; - return "LIVE"; -} - -function actionLabel(agent: AgentInfo): string { - if (!agent.last_action) return "silent"; - return agent.last_action.replace(/^\[Tick \d+\]\s*/, "").replace(/_/g, " ").slice(0, 34); -} - -function initials(agent: AgentInfo): string { - return agent.name - .split(/\s+/) - .filter(Boolean) - .slice(0, 2) - .map((part) => part.charAt(0).toUpperCase()) - .join("") || agent.name.slice(0, 2).toUpperCase(); -} - -export function CastStrip({ agents, selectedAgentId, agentFactions, onSelectAgent }: CastStripProps) { - if (agents.length === 0) return null; - return ( -
- {agents.map((agent) => { - const faction = agentFactions[agent.id] ?? "amber"; - return ( - - ); - })} -
- ); -} diff --git a/frontend/src/components/DemoPlayer.tsx b/frontend/src/components/DemoPlayer.tsx deleted file mode 100644 index 2ac8003..0000000 --- a/frontend/src/components/DemoPlayer.tsx +++ /dev/null @@ -1,510 +0,0 @@ -import { useEffect, useMemo, useRef, useState, type WheelEvent } from "react"; -import { classifyEvent, findActor, isEditableTarget, type AgentInfo, type EventKind } from "../appModel"; -import { WorldViewport } from "./WorldViewport"; -import { IconDock } from "./IconDock"; -import { TopBar } from "./TopBar"; -import { CastStrip } from "./CastStrip"; -import { NarrativeBar } from "./NarrativeBar"; -import { DEFAULT_CAMERA_ZOOM, clampZoomLevel, snapCameraPan, stepZoomLevel } from "../pixelSpec"; -import { - isShowDeckToggleKey, - readShowDeckOpen, - writeShowDeckOpen, -} from "../showDeckState"; -import { buildDemoNarrativeEntries, useDemoReplay } from "../useDemoReplay"; -import { - stepAgentVisualState, - type AgentVisualMeta, - type AgentVisualState, - type VisualAgentSprite, - type VisualFacingDirection, -} from "../agentVisualMovement"; -import type { ThemeName } from "../App"; - -type ActivityKind = EventKind; -type FacingDirection = VisualFacingDirection; -type AgentCondition = "stable" | "strained" | "critical" | "outbreak"; -type DistrictState = "stable" | "warning" | "crisis" | "recovery"; -type Faction = "amber" | "mint" | "violet" | "cyan"; - -const DEFAULT_CAMERA = { x: 72, y: 96, zoom: clampZoomLevel(DEFAULT_CAMERA_ZOOM) }; - -function hashString(v: string): number { - let h = 0; for (let i = 0; i < v.length; i += 1) { h = (h << 5) - h + v.charCodeAt(i); h |= 0; } return Math.abs(h); -} -function snapToGrid(v: number, s = 0.0015): number { return Math.round(v / s) * s; } -function snapPoint(p: { x: number; y: number }) { return { x: snapToGrid(p.x), y: snapToGrid(p.y) }; } - -function clampIntoDistrict(p: { x: number; y: number }, d: { x: number; y: number; width: number; height: number }) { - return { - x: Math.min(d.x + d.width * 0.88, Math.max(d.x + d.width * 0.12, p.x)), - y: Math.min(d.y + d.height * 0.76, Math.max(d.y + d.height * 0.18, p.y)), - }; -} - -function factionFromId(id: string): Faction { - return (["amber", "mint", "violet", "cyan"] as const)[hashString(id) % 4]; -} - -function conditionForAgent(a: AgentInfo): AgentCondition { - if (a.alive === false) return "critical"; - const v = a.vitality ?? 1; - if (v < 0.15) return "critical"; - if (v < 0.3) return "strained"; - if (a.contagion_profile?.infectious === true) return "outbreak"; - return "stable"; -} - -function statusBadgeForCondition(c: AgentCondition): string { - if (c === "critical") return "CRIT"; if (c === "strained") return "LOW"; - if (c === "outbreak") return "SICK"; return ""; -} - -export interface DistrictView { - location: string; count: number; x: number; y: number; - width: number; height: number; state: string; -} - -export function DemoPlayer() { - const demo = useDemoReplay(); - const world = demo.world; - const [camera, setCamera] = useState(DEFAULT_CAMERA); - const [selectedAgentId, setSelectedAgentId] = useState(null); - const [narrativeHoveredAgentId, setNarrativeHoveredAgentId] = useState(null); - const [showDeckOpen, setShowDeckOpen] = useState(() => readShowDeckOpen(localStorage)); - - const setShowDeckPinned = (open: boolean) => { - setShowDeckOpen(open); - writeShowDeckOpen(localStorage, open); - }; - - // Theme state - const [theme, setTheme] = useState(() => { - return (localStorage.getItem("antelab-theme") as ThemeName) || "control-room"; - }); - - useEffect(() => { - document.documentElement.setAttribute("data-theme", theme); - localStorage.setItem("antelab-theme", theme); - }, [theme]); - - const displayCamera = useMemo(() => { - const { x, y } = snapCameraPan(camera.x, camera.y, camera.zoom); - return { x, y, zoom: camera.zoom }; - }, [camera]); - - // District layout - const locationStats = useMemo(() => { - const m = new Map(); - if (!world) return m; - for (const a of world.agents ?? []) { - const loc = a.location || "unknown"; - m.set(loc, (m.get(loc) ?? 0) + 1); - } - for (const loc of world.locations ?? []) { if (!m.has(loc)) m.set(loc, 0); } - return m; - }, [world]); - - const districtLayout = useMemo((): DistrictView[] => { - const entries = [...locationStats.entries()]; - if (entries.length === 0) return []; - const cols = Math.max(1, Math.ceil(Math.sqrt(entries.length))); - const rows = Math.max(1, Math.ceil(entries.length / cols)); - return entries.map(([location, count], idx) => { - const row = Math.floor(idx / cols), col = idx % cols; - const baseX = (col + 0.12) / cols, baseY = (row + 0.12) / rows; - const tw = 0.76 / cols, th = 0.76 / rows; - const j = hashString(location); - const jx = ((j % 7) - 3) * 0.004, jy = (((j >> 3) % 7) - 3) * 0.004; - return { - location, count, - x: snapToGrid(baseX + jx), y: snapToGrid(baseY + jy), - width: snapToGrid(tw), height: snapToGrid(th), - state: "stable" as DistrictState, - }; - }); - }, [locationStats]); - - const roadSegments = useMemo(() => { - const byLoc = new Map(districtLayout.map(d => [d.location, d])); - const graph = world?.location_graph; - if (graph) { - const seen = new Set(); - const segs: Array<{x1:number;y1:number;x2:number;y2:number}> = []; - for (const [src, neighbors] of Object.entries(graph)) { - const sd = byLoc.get(src); if (!sd) continue; - for (const tgt of neighbors) { - const td = byLoc.get(tgt); if (!td) continue; - const key = [src, tgt].sort().join("::"); - if (seen.has(key)) continue; seen.add(key); - segs.push({ x1: sd.x + sd.width/2, y1: sd.y + sd.height/2, x2: td.x + td.width/2, y2: td.y + td.height/2 }); - } - } - if (segs.length > 0) return segs; - } - return []; - }, [districtLayout, world?.location_graph]); - - const agentsByLocation = useMemo(() => { - const m = new Map(); - for (const a of world?.agents ?? []) { - const loc = a.location || "unknown"; - if (!m.has(loc)) m.set(loc, []); - m.get(loc)!.push(a); - } - return m; - }, [world]); - - interface SpriteView { - id: string; name: string; location: string; x: number; y: number; - centerX: number; centerY: number; - activityKind: ActivityKind; rawActivity: string; - faction: Faction; - condition: AgentCondition; statusBadge: string; - minX: number; maxX: number; minY: number; maxY: number; - } - - const worldAgentSprites = useMemo((): SpriteView[] => { - const sprites: SpriteView[] = []; - for (const district of districtLayout) { - const agents = agentsByLocation.get(district.location) ?? []; - for (let idx = 0; idx < agents.length; idx += 1) { - const agent = agents[idx]; - const kind: ActivityKind = classifyEvent(agent.last_action ?? ""); - const condition = conditionForAgent(agent); - const slotRow = Math.floor(idx / 4), slotCol = idx % 4; - const sx = 12 + slotCol * 22, sy = 22 + slotRow * 26; - const slot = snapPoint({ x: district.x + district.width * (sx / 100), y: district.y + district.height * (sy / 100) }); - const pos = snapPoint(clampIntoDistrict(slot, district)); - sprites.push({ - id: agent.id, name: agent.name, location: agent.location, - x: pos.x, y: pos.y, - centerX: snapToGrid(district.x + district.width / 2), - centerY: snapToGrid(district.y + district.height / 2), - activityKind: kind, - rawActivity: agent.last_action ?? "Idle", - faction: factionFromId(agent.id), - condition, - statusBadge: statusBadgeForCondition(condition), - minX: district.x + district.width * 0.12, - maxX: district.x + district.width * 0.88, - minY: district.y + district.height * 0.18, - maxY: district.y + district.height * 0.76, - }); - } - } - return sprites; - }, [districtLayout, agentsByLocation]); - - const agentFactions = useMemo((): Record => { - const rec: Record = {}; - for (const a of world?.agents ?? []) { - rec[a.id] = factionFromId(a.id); - } - return rec; - }, [world?.agents]); - - const detailAgent = useMemo(() => { - if (!selectedAgentId || !world) return null; - return world.agents?.find((a) => a.id === selectedAgentId) ?? null; - }, [selectedAgentId, world]); - - const narrativeEntries = useMemo(() => buildDemoNarrativeEntries(world), [world]); - - const handleNarrativeClickAgent = (id: string) => { - setSelectedAgentId(id); - const sprite = worldAgentSprites.find((s) => s.id === id); - if (sprite) { - setCamera((c) => ({ ...c, x: -sprite.centerX * c.zoom * 800 + 400, y: -sprite.centerY * c.zoom * 560 + 280 })); - } - }; - - const handleNarrativeClickLocation = (loc: string) => { - const district = districtLayout.find((d) => d.location === loc); - if (district) { - setCamera((c) => ({ - ...c, - x: -(district.x + district.width / 2) * c.zoom * 800 + 400, - y: -(district.y + district.height / 2) * c.zoom * 560 + 280, - })); - } - }; - - // Smooth agent movement - const visualStateRef = useRef>({}); - const visualFrameRef = useRef(null); - const previousMetaRef = useRef>({}); - const [spritePositions, setSpritePositions] = useState>({}); - const [spriteTrails, setSpriteTrails] = useState>>({}); - - useEffect(() => { - if (worldAgentSprites.length === 0) { setSpritePositions({}); setSpriteTrails({}); visualStateRef.current = {}; return; } - let active = true; - const tick = world?.tick ?? demo.tick; - const step = (now: number) => { - if (!active) return; - const prev = visualFrameRef.current; visualFrameRef.current = now; - const dt = prev != null ? Math.min(now - prev, 200) : 16; - const currentMeta: Record = {}; - for (const s of worldAgentSprites) { - currentMeta[s.id] = { location: s.location, centerX: s.centerX, centerY: s.centerY }; - } - const nextVisuals: Record = {}; - for (const s of worldAgentSprites) { - const vaSprite: VisualAgentSprite = { - id: s.id, location: s.location, - x: s.x, y: s.y, centerX: s.centerX, centerY: s.centerY, - minX: s.minX, maxX: s.maxX, minY: s.minY, maxY: s.maxY, - activityKind: s.activityKind, - }; - nextVisuals[s.id] = stepAgentVisualState({ - sprite: vaSprite, - previousState: visualStateRef.current[s.id], - previousMeta: previousMetaRef.current[s.id], - elapsedMs: dt, - nowMs: now, - tick, - }); - } - visualStateRef.current = nextVisuals; - previousMetaRef.current = currentMeta; - const posOut: Record = {}; - for (const [id, vs] of Object.entries(nextVisuals)) { - posOut[id] = { x: vs.x, y: vs.y, moving: vs.moving, arriving: vs.arriving, facing: vs.facing }; - } - setSpritePositions(posOut); setSpriteTrails({}); - requestAnimationFrame(step); - }; - const raf = requestAnimationFrame(step); - return () => { active = false; cancelAnimationFrame(raf); }; - }, [worldAgentSprites, demo.tick]); - - // Pulse markers - const [pulseMarkers, setPulseMarkers] = useState>([]); - const pulseTimersRef = useRef([]); - const seenPulseRef = useRef>(new Map()); - - useEffect(() => { - const events = world?.recent_events ?? []; - if (events.length === 0) return; - const latest = events.slice(-4); - const markers: Array<{ id: string; x: number; y: number; kind: ActivityKind }> = []; - for (const raw of latest) { - const actor = findActor(raw, world?.agents ?? []); - if (!actor) continue; - const sprite = worldAgentSprites.find(s => s.name === actor); - if (!sprite) continue; - const key = `${actor}:${raw}`; - if (seenPulseRef.current.has(key)) continue; - seenPulseRef.current.set(key, demo.tick); - markers.push({ id: `${actor}-${Date.now()}`, x: sprite.centerX, y: sprite.centerY, kind: classifyEvent(raw) }); - } - if (markers.length === 0) return; - setPulseMarkers(prev => [...prev, ...markers]); - for (const m of markers) { - const t = window.setTimeout(() => setPulseMarkers(prev => prev.filter(p => p.id !== m.id)), 1400); - pulseTimersRef.current.push(t); - } - return () => { for (const t of pulseTimersRef.current) clearTimeout(t); pulseTimersRef.current = []; }; - }, [demo.tick]); - - // Keyboard shortcuts - useEffect(() => { - const handler = (e: KeyboardEvent) => { - if (isEditableTarget(e.target)) return; - if (isShowDeckToggleKey(e)) { - e.preventDefault(); - setShowDeckOpen((prev) => { - const next = !prev; - writeShowDeckOpen(localStorage, next); - return next; - }); - return; - } - if (e.key === " " || e.code === "Space") { - e.preventDefault(); - demo.setIsPlaying(!demo.isPlaying); - return; - } - if (e.key === "ArrowRight") { - e.preventDefault(); - if (e.shiftKey) { - for (let i = 0; i < 5; i++) demo.stepForward(); - } else if (e.ctrlKey || e.metaKey) { - for (let i = 0; i < 10; i++) demo.stepForward(); - } else { - demo.stepForward(); - } - return; - } - if ((e.ctrlKey || e.metaKey) && e.key === "0") { - e.preventDefault(); - setCamera(DEFAULT_CAMERA); - return; - } - if (e.key === "Escape") { - e.preventDefault(); - setSelectedAgentId(null); - return; - } - }; - window.addEventListener("keydown", handler); - return () => window.removeEventListener("keydown", handler); - }, [demo]); - - const handleWheel = (e: WheelEvent) => { - setCamera(c => ({ ...c, zoom: stepZoomLevel(c.zoom, e.deltaY > 0 ? "out" : "in") })); - }; - - if (demo.isLoading) { - return ( -
-
- ANTELAB - Loading demo data... -
-
- ); - } - - if (demo.error) { - return ( -
-
- ANTELAB - {demo.error} - -
-
- ); - } - - if (!world) { - return ( -
-
- ANTELAB - No world data loaded. -
-
- ); - } - - return ( -
- - - {/* Demo controls overlay */} -
- DEMO - - Background: {demo.scenario?.title ?? "Replay"} - - Tick {demo.tick + 1}/{demo.totalTicks} - - - demo.setTick(Number(e.target.value))} - className="demo-ctls-slider" - /> - {demo.availableRuns.length > 1 && ( - - )} -
- - setSelectedAgentId(id)} - onFocusLocation={() => {}} - world={world} - scenario={demo.scenario} - agentFactions={agentFactions} - detailAgent={detailAgent} - onDismissDetail={() => setSelectedAgentId(null)} - narrativeHoveredAgentId={narrativeHoveredAgentId} - narrativeEntries={narrativeEntries} - /> - - - - - - -
- ); -} diff --git a/frontend/src/components/FloatingDetailCard.tsx b/frontend/src/components/FloatingDetailCard.tsx deleted file mode 100644 index d78cc88..0000000 --- a/frontend/src/components/FloatingDetailCard.tsx +++ /dev/null @@ -1,142 +0,0 @@ -import type { AgentInfo, WorldState } from "../appModel"; -import { agentAgeLabel, agentStressPct, agentVitalityPct } from "../displayScalars"; - -type Faction = "amber" | "mint" | "violet" | "cyan"; - -interface FloatingDetailCardProps { - agent: AgentInfo; - world: WorldState; - screenX: number; - screenY: number; - containerHeight: number; - faction: Faction; -} - -const FACTION_COLORS: Record = { - amber: "#e4a948", - mint: "#68d8b3", - violet: "#be85ff", - cyan: "#74d8f6", -}; - -const FACTION_GRADIENTS: Record = { - amber: "linear-gradient(135deg, #3d2e14 0%, #1c1a16 60%, #2e2416 100%)", - mint: "linear-gradient(135deg, #1a2e24 0%, #1c1a16 60%, #16241e 100%)", - violet: "linear-gradient(135deg, #261a36 0%, #1c1a16 60%, #201a2a 100%)", - cyan: "linear-gradient(135deg, #162a30 0%, #1c1a16 60%, #162428 100%)", -}; - -function agentCondition(agent: AgentInfo): { label: string; bg: string; color: string } { - if (agent.alive === false) return { label: "LOST", bg: "rgba(200,88,80,0.18)", color: "#c85850" }; - const v = agent.vitality ?? 1; - if (v < 0.15) return { label: "CRIT", bg: "rgba(200,88,80,0.18)", color: "#c85850" }; - if (v < 0.3) return { label: "LOW", bg: "rgba(184,150,74,0.18)", color: "#b8964a" }; - if (agent.contagion_profile?.infectious === true) return { label: "SICK", bg: "rgba(200,164,80,0.18)", color: "#c8a450" }; - return { label: "OK", bg: "rgba(106,154,122,0.18)", color: "#6a9a7a" }; -} - -function recentActions(agent: AgentInfo, world: WorldState): string[] { - const raw = (world.recent_events ?? []) - .filter((e) => e.includes(agent.name)) - .slice(-3) - .reverse(); - return raw.map((r) => { - const withoutAgent = r.replace(agent.name, "").trim(); - return withoutAgent.length > 52 ? withoutAgent.slice(0, 52) + "..." : withoutAgent; - }); -} - -export function FloatingDetailCard({ - agent, - world, - screenX, - screenY, - containerHeight, - faction, -}: FloatingDetailCardProps) { - const CARD_W = 260; - const CARD_H = 170; - const GAP = 16; - - // Anchor above agent; flip below if too close to top - const aboveY = screenY - CARD_H - GAP; - const belowY = screenY + GAP; - const anchorTop = aboveY > 0 ? aboveY : belowY; - const left = Math.max(8, Math.min(screenX - CARD_W / 2, containerHeight > 0 ? 9999 : screenX - CARD_W / 2)); - - const actions = recentActions(agent, world); - const cond = agentCondition(agent); - const vitality = agentVitalityPct(agent); - const stress = agentStressPct(agent); - const age = agentAgeLabel(agent.age_ticks); - - return ( -
e.stopPropagation()} - > - {/* Portrait header with faction gradient */} -
-
- {/* Status badge */} - - {cond.label} - -
- -
-
{agent.name}
-
- - {(agent.location || "unknown").replace(/_/g, " ")} - {age && <> · {age}} -
- -
- Vit -
-
-
- {vitality}% -
-
- Stress -
-
-
- {stress}% -
- - {actions.length > 0 && ( -
- {actions.map((a, i) => ( -
{a}
- ))} -
- )} -
-
- ); -} diff --git a/frontend/src/components/IconDock.tsx b/frontend/src/components/IconDock.tsx deleted file mode 100644 index 7a958a1..0000000 --- a/frontend/src/components/IconDock.tsx +++ /dev/null @@ -1,625 +0,0 @@ -import { useState, useCallback, useMemo, useRef, type ChangeEvent, type RefObject } from "react"; -import type { AgentInfo, ScenarioInfo, WorldState } from "../appModel"; -import type { NarrativeEntry } from "./NarrativeBar"; -import { buildCompanyVitalSigns, buildShockTimeline, buildWorldRulePreset } from "../showIdentity"; -import { agentVitalityPct } from "../displayScalars"; -import { buildReceiptSignals } from "../receiptSignals"; -import { - parseArtifactJson, - receiptAutopsyFilename, - renderReceiptAutopsyMarkdown, - type ArtifactParseResult, - type ParsedArtifact, - type ParsedReceiptReport, - type ParsedReceiptRow, -} from "../artifactWorkbench"; -import "../styles/icon-dock.css"; - -type DockTab = "agents" | "events" | "receipts" | "vitals" | "rules"; -type Faction = "amber" | "mint" | "violet" | "cyan"; - -interface IconDockProps { - world: WorldState | null; - scenario: ScenarioInfo | null; - selectedAgentId: string | null; - agentFactions: Record; - onSelectAgent: (id: string) => void; - narrativeEntries?: NarrativeEntry[]; - pinned: boolean; - onPinnedChange: (open: boolean) => void; -} - -function agentStatusDot(agent: AgentInfo): string { - if (agent.alive === false) return "w-dot-danger"; - if (agent.vitality != null && agent.vitality < 0.15) return "w-dot-danger"; - if (agent.vitality != null && agent.vitality < 0.3) return "w-dot-warn"; - return "w-dot-ok"; -} - -function statusLabel(agent: AgentInfo): string { - if (agent.alive === false) return "lost"; - if (agent.vitality != null && agent.vitality < 0.15) return "critical"; - if (agent.vitality != null && agent.vitality < 0.3) return "low"; - if (!agent.last_action) return "silent"; - return "active"; -} - -function statusColor(agent: AgentInfo): string { - if (agent.alive === false) return "var(--w-status-danger)"; - if (agent.vitality != null && agent.vitality < 0.15) return "var(--w-status-danger)"; - if (agent.vitality != null && agent.vitality < 0.3) return "var(--w-status-warn)"; - if (!agent.last_action) return "var(--w-text-muted)"; - return "var(--w-status-ok)"; -} - -function vitBarColor(agent: AgentInfo): string { - const v = agentVitalityPct(agent); - if (v < 15) return "var(--w-status-danger)"; - if (v < 30) return "var(--w-status-warn)"; - return "var(--w-accent)"; -} - -const FACTION_CSS: Record = { - amber: "var(--w-faction-amber)", - mint: "var(--w-faction-mint)", - violet: "var(--w-faction-violet)", - cyan: "var(--w-faction-cyan)", -}; - -export function IconDock({ - world, - scenario, - selectedAgentId, - agentFactions, - onSelectAgent, - narrativeEntries, - pinned, - onPinnedChange, -}: IconDockProps) { - const [activeTab, setActiveTab] = useState("agents"); - const [hovered, setHovered] = useState(false); - const [artifactText, setArtifactText] = useState(""); - const [artifactLabel, setArtifactLabel] = useState("No artifact imported"); - const [artifactImportError, setArtifactImportError] = useState(null); - const [selectedArtifactReceiptId, setSelectedArtifactReceiptId] = useState(null); - const artifactInputRef = useRef(null); - - const expanded = pinned || hovered; - const parsedArtifact = useMemo(() => { - if (artifactText.trim().length === 0) return null; - return parseArtifactJson(artifactText, artifactLabel); - }, [artifactText, artifactLabel]); - const importedArtifact = parsedArtifact?.ok ? parsedArtifact.artifact : null; - const importedReceiptReport = importedArtifact?.receiptReport ?? null; - - const handleIconClick = useCallback((tab: DockTab) => { - setActiveTab(tab); - onPinnedChange(activeTab === tab ? !pinned : true); - }, [activeTab, onPinnedChange, pinned]); - - const handleTabClick = useCallback((tab: DockTab) => { - setActiveTab(tab); - }, []); - - if (!world) { - return ( -
-
-
Waiting for world data...
-
-
- ); - } - - const agents = world.agents ?? []; - const activeAgents = agents.filter((a) => a.alive !== false); - const silentAgents = activeAgents.filter((a) => !a.last_action); - const rulePreset = buildWorldRulePreset(scenario, world); - const shockTimeline = buildShockTimeline(world); - const vitalSigns = buildCompanyVitalSigns(world); - const receiptSignals = buildReceiptSignals(world, narrativeEntries); - - const handleArtifactFileChange = (event: ChangeEvent) => { - const file = event.target.files?.[0]; - event.target.value = ""; - if (!file) return; - - setArtifactLabel(file.name); - setArtifactImportError(null); - setSelectedArtifactReceiptId(null); - file.text() - .then((value) => setArtifactText(value)) - .catch((error: unknown) => { - const detail = error instanceof Error ? error.message : "unknown read error"; - setArtifactImportError(`Could not read ${file.name}: ${detail}`); - }); - }; - - const locateArtifactReceipt = (receipt: ParsedReceiptRow) => { - setSelectedArtifactReceiptId(receipt.claimId); - if (receipt.agentId && agents.some((agent) => agent.id === receipt.agentId)) { - onSelectAgent(receipt.agentId); - } - }; - - const exportReceiptMarkdown = () => { - if (!importedReceiptReport || !importedArtifact) return; - const markdown = renderReceiptAutopsyMarkdown(importedReceiptReport, importedArtifact.metadata); - const blob = new Blob([markdown], { type: "text/markdown;charset=utf-8" }); - const url = URL.createObjectURL(blob); - const link = document.createElement("a"); - link.href = url; - link.download = receiptAutopsyFilename(importedReceiptReport, importedArtifact.sourceLabel); - document.body.appendChild(link); - link.click(); - link.remove(); - window.setTimeout(() => URL.revokeObjectURL(url), 0); - }; - - return ( -
setHovered(true)} - onMouseLeave={() => setHovered(false)} - aria-label="AnteLab Show Deck" - > - - - {/* Collapsed icon buttons */} -
- - - - - -
- - {/* Expanded panel */} -
-
- Deck - - - - - -
- -
- {activeTab === "agents" && ( - <> -
- Live Cast - {agents.length} -
- {agents.length === 0 ? ( -
No agents in world
- ) : ( - - - - - - - - - - - - - {agents.map((agent) => ( - onSelectAgent(agent.id)} - > - - - - - - - - ))} - -
NameLocationActionVitality
- - - - {agent.name}{(agent.location || "unknown").replace(/_/g, " ")} - {agent.last_action ? agent.last_action.replace(/_/g, " ").slice(0, 18) : statusLabel(agent)} - -
-
-
- {agentVitalityPct(agent)}% -
- )} - - )} - - {activeTab === "events" && ( - <> -
- Shock Feed - {narrativeEntries?.length ?? 0} -
- {(!narrativeEntries || narrativeEntries.length === 0) ? ( -
No shock feed yet. Advance the live run.
- ) : ( -
- {narrativeEntries.slice().reverse().map((entry, i) => ( -
- T+{entry.tick.toString().padStart(3, "0")} - {entry.text} -
- ))} -
- )} - - )} - - {activeTab === "receipts" && ( -
-
- Verdict Ledger - - {importedReceiptReport?.summary.falseCompletionClaims ?? receiptSignals.summary.falseCompletionClaims} - -
- artifactInputRef.current?.click()} - onFileChange={handleArtifactFileChange} - onTextChange={(value) => { - setArtifactText(value); - setArtifactLabel(value.trim().length > 0 ? "Pasted receipt artifact" : "No artifact imported"); - setArtifactImportError(null); - setSelectedArtifactReceiptId(null); - }} - onLocateReceipt={locateArtifactReceipt} - onExportMarkdown={exportReceiptMarkdown} - /> -
-
- {receiptSignals.summary.supported} - Supported -
-
- {receiptSignals.summary.unsupported} - Unsupported -
-
- {receiptSignals.summary.unknown} - Unknown -
-
-
-
Live inferred receipts
- {receiptSignals.rows.map((row, i) => ( -
-
- {row.status} - {row.label} -
-

{row.claim}

- {row.explanation} - {row.supportingEvidence.length > 0 && ( -
    - {row.supportingEvidence.map((item) => ( -
  • {item.replace(/^\[Tick \d+\]\s*/, "")}
  • - ))} -
- )} - {row.missingEvidence.length > 0 && row.status !== "unknown" && ( -
    - {row.missingEvidence.map((item) => ( -
  • {item}
  • - ))} -
- )} -
- ))} -
-
- )} - - {activeTab === "vitals" && ( -
-
- Survival Gauntlet - {shockTimeline.length} -
- {shockTimeline.length === 0 ? ( -
No gauntlet timeline in this run.
- ) : ( -
- {shockTimeline.map((beat) => ( -
- - {beat.label} - {beat.state} - T+{beat.tick} -
- ))} -
- )} -
- Company Vitals - {vitalSigns.length} -
-
- {vitalSigns.map((sign) => ( -
- {sign.label} - {sign.value} -
- ))} -
-
- )} - - {activeTab === "rules" && ( -
-
- World Rules - Parallel -
-
- Current physical preset - {rulePreset.label} - {rulePreset.shockLabel} -
-
- {rulePreset.speech} - {rulePreset.resources} - {rulePreset.visibility} - {rulePreset.mortality} -
-
-
- {activeAgents.length} - Cast -
- · -
- {silentAgents.length} - Silent -
- · -
- {world.locations?.length ?? 0} - Districts -
- · -
- T+{world.tick} - Tick -
- · -
- {world.recent_events?.length ?? 0} - Feed -
- · -
- - {agents.filter((a) => a.alive === false).length} - - Lost -
-
-
- )} -
-
-
- ); -} - -interface ReceiptArtifactImportProps { - artifactLabel: string; - parsedArtifact: ArtifactParseResult | null; - importedArtifact: ParsedArtifact | null; - report: ParsedReceiptReport | null; - selectedReceiptId: string | null; - importError: string | null; - inputRef: RefObject; - onOpenFileDialog: () => void; - onFileChange: (event: ChangeEvent) => void; - onTextChange: (value: string) => void; - onLocateReceipt: (receipt: ParsedReceiptRow) => void; - onExportMarkdown: () => void; -} - -function ReceiptArtifactImport({ - artifactLabel, - parsedArtifact, - importedArtifact, - report, - selectedReceiptId, - importError, - inputRef, - onOpenFileDialog, - onFileChange, - onTextChange, - onLocateReceipt, - onExportMarkdown, -}: ReceiptArtifactImportProps) { - const selectedReceipt = report?.receipts.find((receipt) => receipt.claimId === selectedReceiptId) ?? null; - - return ( -
-
-
- Artifact Receipt Autopsy - {artifactLabel} -
- - -
-