Files
headquarter/openspec/changes/archive/2025-05-18-ssh-key-management/.pi-map.md
T
Developer c8db6ce933 fix: disable native touch panning on mobile terminal and archive specs
- Change mobile terminal CSS to use touch-action: none and
  overscroll-behavior: none so the custom touch handler owns swipes
- Archive completed/partial OpenSpec specs to
  openspec/changes/archive/2026-06-14-completed-specs-archive/
- Regenerate project maps

Quality gates: npm run typecheck, npm run lint (apps/web)
2026-06-14 18:07:01 +00:00

1.5 KiB

2025-05-18-ssh-key-management

dir: 2025-05-18-ssh-key-management

index: 2025-05-18-ssh-key-management/.pi-map.index.md

role

Implements a full-stack SSH key management system for secure Ed25519 key generation, encrypted storage, and git operations with external providers.

files

  • .openspec.yaml | Defines an OpenSpec configuration file with schema type and creation date metadata
  • design.md | Design document for implementing an API and UI to manage Ed25519 SSH keys with encrypted private key storage | dep: cryptography (Fernet, Ed25519), database/SSHKey model, frontend UI components, JWT_SECRET (for Fernet key derivation)
  • proposal.md | Proposes adding SSH key management functionality (backend API, frontend UI, and Ed25519 key generation with encryption) to enable git operations with external providers. | dep: FastAPI (implied by router pattern), Fernet encryption, Ed25519 cryptography, React/Vue frontend (implied by web app), existing SSHKey model
  • tasks.md | A completed task checklist documenting the implementation of a full-stack SSH key management feature with backend API, frontend UI, and verification steps. | dep: FastAPI, cryptography, Pydantic, React, React Router, npm, pytest, ruff, mypy

arch

Full-stack feature module with backend REST API, frontend UI, encrypted private key storage, and task-driven implementation documentation following design-proposal-tasks workflow.

tags

key, design, api, ssh, .openspec, ed25519, management, backend

symbols

workflows

dirty