From 8e25103a0f4c96088e5952181efc1147a1076470 Mon Sep 17 00:00:00 2001 From: TARS Date: Wed, 12 Aug 2026 01:52:51 -0400 Subject: [PATCH] MINOR: define Qt port scope --- AGENTS.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index 13e7449..5bec47e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -13,8 +13,38 @@ This repository is a Qt 6 port of KaTrain, a KataGo frontend for Go/Baduk. - Upstream KaTrain is a Python application built with Kivy. - Kivy does not work well on Wayland, so this project is a Qt 6 port. +- The goal is a PySide6 frontend for KaTrain. - `katrain/core` is not fully UI-independent. The first major goal is to separate the actual core functionality from UI-specific concerns before or alongside the Qt UI port. - Preserve upstream behavior where practical, while keeping UI abstractions out of the reusable core. +- Do not rewrite working core logic unless necessary. Keep divergence small so upstream versions can continue to be tracked. + +## Scope + +### Non-goals + +- Engine or model downloading. +- KataGo contribution. +- Mobile support. +- Kivy compatibility in the new frontend. +- Sabaki theme package installation. + +### Required Functionality + +- SGF loading and saving. +- KataGo analysis. +- Analysis graph, move tree, candidate moves, ownership display, and principal variation display. +- Mistake coloring. +- Play against AI. +- Teaching and training modes. +- Human-like AI settings. +- Engine restart and settings. +- Localization, where practical. + +## Board Themes + +- Support arbitrary board texture, black stone, and white stone images. +- Allow board, black stone, and white stone components to be mixed independently. +- Support multiple stone image variants internally. ## Environment