Files
tai/CHANGELOG.md
zphinx 65c74dde5a
All checks were successful
CI / test (push) Successful in 14s
update
Co-authored-by: Copilot <copilot@github.com>
2026-05-04 04:08:50 +02:00

2.5 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.


[Unreleased]

Added

  • README.md — project overview, description, example workflow, supported distributions, and suggested tooling
  • ROADMAP.md — phased development plan covering decisions, data collection, AI integration, CLI design, and hardening
  • CHANGELOG.md — this file; established changelog tracking for the project
  • .gitea/workflows/ci.yml — Gitea Actions CI workflow for push and pull request events
  • Gitea CI now uses native git checkout and system Python setup to avoid host-executor JavaScript action path issues
  • Gitea native checkout now uses CI_GIT_TOKEN repository secret for authenticated fetch from private repos
  • Gitea CI now installs dependencies in a local .venv to avoid Debian/PEP 668 externally-managed pip errors
  • Python package scaffold with src layout and project metadata in pyproject.toml
  • Initial CLI entrypoint with agreed SSH flags: --identity-file, --jump-host, and --ignore-ssh-config
  • Input parsing/validation module and core request model
  • SSH configuration scaffold module for upcoming connection/read-only execution work
  • Implemented SSH module with real key-based command execution via system ssh
  • Added explicit SSH port support across CLI, input parsing, request model, and SSH client (--port, e.g. 5566)
  • Added live SSH connectivity probe (uname -a) enabled by default, with --no-probe opt-out and non-zero exit on failure
  • Read-only command policy enforcement (allowlist + blocked shell operators)
  • Test scaffold (pytest) with initial parser and CLI coverage
  • SSH test coverage for policy checks, SSH argument construction, and config summary behavior
  • CI workflow for lint (ruff), type-check (mypy), and tests (pytest)
  • CI coverage expanded with Markdown formatting checks (mdformat --check) and YAML linting (yamllint)

Decided

  • Implementation language: Python
  • Distribution strategy: single distributable binary via Nuitka (PyInstaller as fallback)
  • SSH authentication: keypair only (ed25519/RSA); auto-accept new hosts; hard reject on host key change with MITM warning
  • SSH bastion support: --jump-host flag using SSH native ProxyJump
  • SSH config behavior: use ~/.ssh/config by default; allow override via --ignore-ssh-config
  • Interface: interactive REPL for v0.1; textual-based TUI (split-pane) for v0.2+