build: Melos, a Dart check and every path for the single repository

- Melos 8.9 as the root's dev dependency, with scripts across the
  workspace (analyze, test:dart, test:flutter, generate, check) and its
  filters (--diff, --include-dependents); cli_util overridden to 0.5.2
  for it, since Learn's flutter_launcher_icons asks for 0.4 and uses only
  its logger, unchanged in 0.5.
- tool/check.dart in place of tool/check.sh: packages, formatting of our
  own files, analysis, the tools' tests, then every package's tests
  through Melos (--changed-since=<commit> for only what changed and what
  depends on it). tool/pre-push is the hook: the signature check, then
  the checks. CI generates every server's code and runs the same check.
- The images build from the root with a workspace narrowed to what they
  need (tool/workspace_only.sh); compose, the deploy's migration test,
  the snap, the release script, the editor's launch files and Learn's
  asset tools (run from apps/learn) follow the new layout.
- The project's source is named as project-halkyon/halkyon (source link,
  snap, F-Droid listing, release uploads); the AGPL packages carry the
  licence's own text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-10-19 20:39:09 +02:00
commit af1dbee509
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64

View file

@ -1,14 +1,15 @@
# The Docker build context is the repository root. Nothing secret, local or bulky
# goes into it: the server's and the curator's Dockerfiles copy their whole package folders.
# goes into it: Learn's server's and curator's Dockerfiles copy their whole package
# folders (and the server the module it builds on).
# Secrets and local state
halkyon_learn_server/config/passwords.yaml
**/config/passwords.yaml
# Dictionary files: tens of megabytes, mounted on an instance, never built in
halkyon_learn_server/dictionaries/
apps/learn/halkyon_learn_server/dictionaries/
deploy/dictionaries/
# Published studysets' repositories of a development server
halkyon_learn_server/repositories/
halkyon_learn_server/.serverpod/
apps/learn/halkyon_learn_server/repositories/
apps/learn/halkyon_learn_server/.serverpod/
deploy/.env
**/*.log
@ -19,7 +20,17 @@ deploy/.env
.vscode/
.claude/
# Not needed to build the server
halkyon_learn_flutter/
# Not needed to build the server or the curator
apps/learn/halkyon_learn_flutter/
apps/learn/halkyon_learn_client/
apps/learn/tool/
apps/todo/
packages/halkyon_app/
packages/halkyon_base_client/
packages/halkyon_core/
packages/halkyon_interop/
packages/halkyon_ui/
docs/
snap/
NEXT.md
SHARED-PACKAGES.md