Skip to content

Development plan: client–server system, integrations, test benches - #3

Merged
malinkin-s merged 3 commits into
mainfrom
claude/plan-architecture-2026-09-29-0522
Sep 29, 2026
Merged

malinkin-s merged 3 commits into
mainfrom
claude/plan-architecture-2026-09-29-0522

Conversation

@malinkin-s

@malinkin-s malinkin-s commented Sep 29, 2026 •

Copy link
Copy Markdown
Owner

Documentation only — no code changes. Records the plan for turning the utility into an open-source production tracking system; nothing in it is implemented yet.

Direction

A server with a database, the utility as the operator's client, a web page for the shift supervisor, Active Directory sign-in, and an integration hub for ERPs. The earlier draft in this PR (encrypted log on a shared network folder) is replaced: nearly all of its complexity came from having no central node. It stays documented as a fallback.

The project is open source and not tied to a particular shop: shifts, time format, operators, retention, visibility, directory and ERP connections are configured by the administrator. Standalone mode stays — without a server the utility works as it does today, and program files remain read-only.

Documents

File Contents
docs/ARCHITECTURE.md Client–server design and reasons; target-system diagram and an end-to-end sequence diagram (Mermaid); server stack (FastAPI, SQLite WAL, SSE, TLS with pinned certificate); sign-in; production events; offline outbox; integrations; repository layout; risks
docs/INTEGRATIONS.md ISA-95 positioning, the mapping problem, integration patterns, the integration hub (connector plugins configured in the admin panel, encrypted secrets, routing, mapping tables, integration outbox, delivery log, Integration API), research on Infor SyteLine, 1C and Active Directory with sources
docs/TEST_BENCH.md Bench nodes and what runs on each (Windows 7 client VM, Linux server, Samba share, Samba AD, ERP mock, Toxiproxy, CI), topology diagram, bench configurations, 12 test scenarios
docs/ROADMAP.md Stages 0–8 of the tracking system, then machine-data stages A–F
docs/TASKS.md 52 stage tasks with scope, acceptance criteria, dependencies and size; research, test-bench and maintenance tasks; open questions with resolutions
docs/FINDINGS.md Audit of 2026-09-28 (fixed in #2 and still open) and planning findings
README.md, README.ru.md Short roadmap section

All Mermaid diagrams were rendered with mermaid-cli to check the syntax.

Stages

Stage What it brings
0 Windows 7 compatibility probe (gate), client groundwork
1 Server skeleton: users, roles, workstations, settings, admin panel, Docker
2 Client connects: registration, name + PIN sign-in, offline sign-in
3 Production log: events, outbox, live updates
4 Supervisor page, CSV export
5 Sessions as named bookmarks
6 Operations: backups, install guide, retention
7 Active Directory sign-in, roles from groups
8 Integration hub: webhook, file drop, SyteLine, 1C connectors; Integration API

Gate

Task S0-01: a probe on a real Windows 7 32-bit PC (TLS with certificate pinning, SSE, DPAPI in a PyInstaller build). If it fails, the client architecture is revisited before the server work starts.

Language

The repository is English-first from now on. English documents are primary; Russian versions of the README, roadmap and architecture are in *.ru.md as translations that may lag behind.

🤖 Generated with Claude Code

https://claude.ai/code/session_01CW3WfPRekjK4x6M8VNRckz

Утилита переходит от одного рабочего места к системе учёта: вход по ролям,
зашифрованный журнал выработки, сессии, режим мастера, выгрузка в CSV,
хранилище на сетевом диске.

docs/ARCHITECTURE.md фиксирует решения и их причины:
- журнал неизменяемых файлов вместо SQLite на сетевом диске;
- AES-GCM средствами Windows (CNG) — без зависимостей, работает на Win7;
- ключ данных и слоты пользователей: вход = расшифровка своего слота;
- PIN оператора плюс секрет рабочего места против перебора;
- сессия как именованная закладка, журнал — единственный источник правды;
- весь ввод-вывод в фоновом потоке, автоподгрузка опросом.

docs/ROADMAP.md: этапы 0–5 системы учёта перед прежними A–F.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CW3WfPRekjK4x6M8VNRckz
The planned tracking system moves from a shared network folder to a server
with a database, with the utility as the operator's client and a web page
for the supervisor. Nothing is implemented yet: this commit only records the
plan.

- docs/ARCHITECTURE.md: client-server design and the reasons for it
  (why not a shared folder, FastAPI + SQLite, SSE for live updates, TLS
  with a pinned self-signed certificate, PIN sign-in only from registered
  workstations, offline outbox, versioned API).
- docs/ROADMAP.md: stages 0-6 of the tracking system, then machine-data
  stages A-F.
- docs/TASKS.md: task breakdown with scope, acceptance criteria,
  dependencies and size; maintenance tasks from the audit; open questions.
- docs/FINDINGS.md: audit results (fixed and open) and planning findings.
- README: short roadmap in English and Russian.

The repository is English-first from now on: English documents are the
primary ones, Russian versions move to *.ru.md as translations.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CW3WfPRekjK4x6M8VNRckz
@malinkin-s malinkin-s changed the title План развития: архитектура системы учёта и этапы 0–5 Development plan: client–server tracking system, tasks and findings Sep 29, 2026
- docs/INTEGRATIONS.md: where the system sits in ISA-95, the mapping
  problem, integration patterns, and the integration hub: connector
  plugins configured in the admin panel, encrypted secrets, routing,
  mapping tables, an integration outbox with retries and a delivery log,
  and an Integration API for ERPs that read from us. Research notes on
  Infor SyteLine (IDO REST, ION), 1C (OData, or 1C reading our event feed)
  and Active Directory (LDAPS, group-to-role mapping), with sources.
- docs/TEST_BENCH.md: bench nodes and what runs on each, topology,
  bench configurations and test scenarios.
- docs/ARCHITECTURE.md: target-system diagram and an end-to-end sequence
  diagram (Mermaid); integrations section; settings and hub tables.
- docs/TASKS.md: administrator settings (shifts, time format, retention,
  visibility), stage 7 (directory), stage 8 (integration hub), research
  and test-bench tasks; open questions resolved from the owner's answers.
- docs/ROADMAP.md, FINDINGS.md, READMEs: stages 7-8, open-source scope,
  new planning findings. Russian versions updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CW3WfPRekjK4x6M8VNRckz
@malinkin-s malinkin-s changed the title Development plan: client–server tracking system, tasks and findings Development plan: client–server system, integrations, test benches Sep 29, 2026
@malinkin-s
malinkin-s merged commit 8a4f4ac into main Sep 29, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants