Files
headquarter/.pi-map.md
T
Developer 9f720930ea fix: run tool terminal sessions as container user instead of root
- Remove compose-level user: 0:0 override from manifest_compiler.py so the
  entrypoint can start as root, fix mount ownership, and drop privileges to
  the container user internally.
- Add get_manifest_container_user() helper to resolve the manifest-declared
  container user (with uid:gid fallback).
- Pass container user through TerminalSession, TerminalManager, and the
  terminal WebSocket handler so docker exec is invoked with --user <user>.
- Update and add unit tests for the manifest compiler and terminal session.
- Record the additional root-user fix in the fix-pi-container-mount-permissions
  OpenSpec change/tasks.

Quality gates: pytest tests/unit/ (226 passed), pytest tests/services/test_terminal_manager_multi.py (7 passed), ruff check on changed files (clean), mypy on changed files (clean)
2026-06-17 20:51:46 +00:00

4.5 KiB

.

dir: .

index: ./.pi-map.index.md

Project Map Protocol

  1. Read this protocol and the root .pi-map.index.md first.
  2. Use index: / map: references to open relevant directory indexes and maps.
  3. Load indexes before rich maps during task-start navigation.
  4. Read the local rich map and actual source before editing.
  5. Treat non-empty ## dirty sections in either artifact as stale.
  6. If source and generated artifacts disagree, trust source.
  7. If map and index disagree, trust neither blindly; verify from source and regenerate the pair.
  8. After editing source, run project_map_patch for each changed file.
  9. Before broad architectural claims or final handoff, run project_map_validate when freshness matters.

Trust boundary: index routes, map orients, source decides.

role

A self-hosted development platform that manages projects, git repositories, and development tools with OAuth2 authentication, containerized via Docker Compose.

files

  • .env.example | Provides example environment variable configuration for a full-stack application with database, caching, authentication, and deployment settings
  • .gitignore | Specifies files and directories for Git to ignore across a project using Beads/Dolt, Python, Node, and various IDE/OS tooling. | dep: git, dolt, beads, python, node, npm, yarn, pnpm, pytest, mypy, ruff, coverage
  • AGENTS.md | Defines operational guidelines and workflows for AI agents collaborating on a software project governed by OpenSpec | dep: OpenSpec, superpowers (brainstorming, writing-plans, test-driven-development, systematic-debugging, verification-before-completion, using-git-worktrees, dispatching-parallel-agents), git
  • CHANGELOG.md | Documents version history and notable changes for a project management and Git repository application
  • Makefile | Provides standardized development commands for managing a Docker-based full-stack application with API, web frontend, database, and testing infrastructure | dep: docker compose, alembic, pytest, ruff, mypy, playwright, npm, postgres, redis
  • README.md | Documentation for a self-hosted development platform that manages projects, git repositories, and development tools with OAuth2 authentication | dep: FastAPI, SQLAlchemy, Pydantic, Alembic, python-jose, React, TypeScript, Vite, React Router, Docker, PostgreSQL, Traefik, Authentik
  • docker-compose.traefik.yml | Deploys a multi-service application (PostgreSQL, Redis, web frontend, API) behind an existing Traefik reverse proxy with TLS termination | dep: docker, docker-compose, traefik, postgres, redis, node/vite, python/fastapi
  • docker-compose.yml | Defines a multi-service Docker Compose stack for a web application with PostgreSQL, Redis, API backend, and web frontend services | dep: Docker, Docker Compose, PostgreSQL, Redis, Vite, asyncpg, Python/FastAPI (implied), Node.js (implied)
  • progress.md | Documents the progress and remaining tasks for a backend-frontend refactoring project involving modularization, code reorganization, and verification.
  • swap-pane | Provides a command to swap the position of two tmux panes within a window or between windows | dep: tmux, client, window, layout, cmd-find, cmd-parse, options
  • ui-audit-spacing-typography.md | A detailed audit report identifying critical CSS styling gaps, mobile layout failures, and design system inconsistencies in a web application's UI components and stylesheets. | dep: React/TSX components, CSS stylesheets (global.css, utilities.css, tokens.css, page-specific CSS), JSX/TSX files in apps/web/src/components and apps/web/src/pages
  • ui-rework-foundations-apply.md | Documents the implementation of Pass 1 (Foundations) of a web UI spacing/typography/visual-rhythm rework, including design token expansion, primitive CSS class additions, component refactors, and OpenSpec documentation. | dep: CSS design tokens, React/TSX components, OpenSpec documentation system, Git/SSH, npm build toolchain
  • ui-rework-pass2-apply.md | Documents the implementation of Pass 2 of a web UI spacing/typography rework, refactoring inline styles into token-based utility classes across multiple components. | dep: React/TSX components, CSS custom properties, OpenSpec documentation system, git workflow

arch

Full-stack containerized architecture with PostgreSQL database, Redis caching, separate API/backend and web frontend services, reverse-proxy ready (Traefik), using a Makefile-driven development workflow with AI agent collaboration via OpenSpec governance.

tags

docker, web, git, application, ui, rework, python, redis

symbols

workflows

dirty