{
  "name": "psyche-learning-system",
  "$schema": "../../../node_modules/nx/schemas/project-schema.json",
  "projectType": "application",
  "sourceRoot": "apps/psyche/learning-system/src",
  "tags": [
    "scope:psyche",
    "layer:service",
    "type:python",
    "runtime:fastapi",
    "feature:learning",
    "feature:memory"
  ],
  "targets": {
    "serve": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run uvicorn learning_system.main:app --reload --host 0.0.0.0 --port 8010",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "serve-prod": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run uvicorn learning_system.main:app --host 0.0.0.0 --port 8010 --workers 4",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "build": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry build",
        "cwd": "apps/psyche/learning-system"
      },
      "outputs": ["{projectRoot}/dist"]
    },
    "install": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry install",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "install-dev": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry install --with dev",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "lint": {
      "executor": "nx:run-commands",
      "options": {
        "commands": ["poetry run ruff check src/", "poetry run mypy src/"],
        "cwd": "apps/psyche/learning-system",
        "parallel": false
      }
    },
    "format": {
      "executor": "nx:run-commands",
      "options": {
        "commands": ["poetry run black src/", "poetry run ruff check --fix src/"],
        "cwd": "apps/psyche/learning-system",
        "parallel": false
      }
    },
    "test": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run pytest",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "test-unit": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run pytest -m unit",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "test-integration": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run pytest -m integration",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "test-cov": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run pytest --cov=learning_system --cov-report=html --cov-report=term-missing",
        "cwd": "apps/psyche/learning-system"
      },
      "outputs": ["{projectRoot}/htmlcov"]
    },
    "migrate": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run alembic upgrade head",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "migrate-create": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run alembic revision --autogenerate -m",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "migrate-rollback": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run alembic downgrade -1",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "decay-consolidation": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run python -m learning_system.cli decay-consolidation",
        "cwd": "apps/psyche/learning-system"
      },
      "description": "Run memory decay and consolidation cycle"
    },
    "skill-sync": {
      "executor": "nx:run-commands",
      "options": {
        "command": "poetry run python -m learning_system.cli skill-sync",
        "cwd": "apps/psyche/learning-system"
      },
      "description": "Synchronize skill library with external sources"
    },
    "docker-build": {
      "executor": "nx:run-commands",
      "options": {
        "command": "docker build -t psyche-learning-system:latest -f Dockerfile ../..",
        "cwd": "apps/psyche/learning-system"
      }
    },
    "docker-run": {
      "executor": "nx:run-commands",
      "options": {
        "command": "docker run -p 8010:8010 --env-file .env psyche-learning-system:latest",
        "cwd": "apps/psyche/learning-system"
      }
    }
  }
}
