Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

💡 [Roadmap] После 2.0: серверный трек и отложенные идеи

Aperta
#59 6 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
15/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Tranquilla
Stack tecnologico
python
Ambito
documentation

Direzione di ricerca

This is a roadmap, not an implementation task; it explicitly says the canonical server roadmap will move to docs/dev/design/server-roadmap.md under #1191. Read docs/dev/design/server-mode.md and the linked design documents only for context. There is no completion criterion for work on this issue itself; pick up a separately scoped issue instead.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

area/core difficulty/hard enhancement

Что это

Направление, а не задача. Дом для того, что делается после 2.0 — либо не делается вовсе. Конкретные работы отсюда выносятся отдельными issue с метками; сам roadmap задач не содержит.

Это не дорога к 2.0. Путь к 2.0 — хвост аудита (#995) и Фаза L (#1053): пройти на грейдере настоящий курс, сверить вердикты с платформой, починить найденное и подтвердить повторным прогоном. Серверный трек — фазы 3–4 по фазовой миграции, они начинаются после этого.


🖥️ Серверный трек

Канон переезжает в документ репозитория — docs/dev/design/server-roadmap.md, задача #1191. До переноса содержание живёт в комментариях ниже:

  • комментарий от 31.07.2026 — 78 целей в 11 тематических блоках с фазами и зависимостями, плюс 8 отклонённых как «на самом деле не серверные» (с причинами);
  • комментарий от 11.08.2026 — пополнение из аудита 2026-08-10: канарейка дрейфа Stepik API, каталог задач вместо локального мастера, переопределяемый API_HOST, агрегация данных об использовании.

Дизайн направления уже готов и не переоткрывается: server-mode.md (фазы 0–4, Runner-слой, контракт API), server-sandbox-design.md, server-data-model.md, ADR-0001 / 0008 / 0009.

Правило трека: отдельные issue по серверу не заводятся до решения о пивоте. Пополнение идёт сюда (позже — в документ), а не россыпью задач.

Что уже сделано из этого направления локально: Runner/LocalRunner (фаза 1) и SandboxRunner под --sandbox (фаза 2, #266, ADR-0007). Не начаты фаза 3 (HTTP API поверх песочницы, очередь, квоты) и фаза 4 (публичный сервер).

Находки аудита, которые закрываются только серверной версией: SEC-WEB-01 (RCE при деплое — на сервере --sandbox обязателен вне loopback), SEC-CORE-04 (Windows-backend без сетевой изоляции непригоден для чужого кода — сервер только Linux), PROD-02 (OAuth-барьер для студентов снимается централизованным входом через Stepik).


🔲 Отложенные идеи

🎮 Плагины других платформ (Codeforces, LeetCode, Timus). Абстрактный PlatformPlugin с download_tests() / format_input(), платформы подключаются через entry points.

Статус: не начато и отложено осознанно (аудит 2026-07-15, «Чего НЕ делать в 2026»). В коде нет абстракции платформ — всё завязано на Stepik (downloader.py, core/stepik_client.py, core/oauth_flow.py). Держим как someday/maybe: пока не пройден собственный курс на собственной платформе, расширять список платформ преждевременно.


📤 Выделено в отдельные issue

  • #1192 — подкоманда stepik-grader stats: единая точка статистики вместо флагов --stats-summary / --export-progress / --insights / --history, плюс метрика «очередь задач из кэша» и явное среднее время выполнения.
  • #1191 — перенос серверного трека из комментариев в документ репозитория.

✅ Закрыто из исходного roadmap

  • 🤖 AI-подсказки при WA — --ai-hints (core/ai_hints.py): BYOK, OpenAI-совместимый endpoint на голом requests, ключ из env, однократный consent-гейт, заземление против галлюцинаций, пометка «AI-generated». ADR-0003 (#434), MVP #435, режимы 3/4 #542, согласие #630, тесты prompt-injection #692. Без SDK openai/anthropic — решение ADR-0003.
  • 🛡️ Локальная ОС-песочница — --sandbox (bubblewrap / sandbox-exec / Job Objects, #266, ADR-0007): сеть-off и квоты памяти/CPU без Docker и внешних демонов. Docker как обязательная зависимость отвергнут (ADR-0007/0008). Мультитенантная серверная изоляция этим не закрыта — она в серверном треке выше.
  • 📊 Дашборд прогресса — ядро — история --history (#430), insights/TTFG --insights (#431), экспорт агрегатов --export-progress md|html (#432), сводка --stats-summary, накопитель .grader_stats.jsonl. Остаток — в #1192.

Ссылки

Lingua principale
Python
Stelle
3
Fork
6
Merge medio
2g 1h
PR unite (30g)
50

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ArtVsMark/Stepik-Python-Grader

Tutte le issue di ArtVsMark/Stepik-Python-Grader

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.