Skip to content

ALGO-01 — Shared algorithms & optimization capability: F# library + product skill knowledge pack, available in product workspaces #5222

Open
6 of 66 issues completed

Description

@EHotwagner

Work level: Outcome · Track: Active delivery

Promise

A growing, shared algorithms and optimization capability from classic AI and optimization research, available both in the framework and in every product workspace, starting with games scaffolded from fs-gg-fable-game. It covers:

  • pathfinding (A*, JPS, HPA*, flow fields, D* Lite);
  • decision making (behaviour trees, HTN, GOAP, utility AI, FSMs);
  • adversarial and stochastic search (minimax and alpha-beta, MCTS);
  • spatial structures (influence maps, spatial hashing, k-d trees);
  • optimization (LP and ILP, local search, simulated annealing, GA, constraint solving).

It has three connected parts:

  1. An F# library on nuget.org. Tested implementations, admitted only with property tests (for example A* optimality against BFS) and bench numbers from the FS.GG.Game harness (the corpus case 41-residue-and-full-queue is FLAKY in CI — it exits 5 at random, and a gate that fails randomly teaches people to re-run it #761/fix(engine): next/take name the observed reason, not a guessed list of causes (#440) (case 41) #792). Fable-portable where useful.
  2. A product skill, fs-gg-algorithms, with a knowledge pack. One cited entry per technique: idea, complexity, when and when not to use it, pitfalls, F# usage, references (summarised, never copied), and bench numbers. It reuses the Atlas record format and search tooling as a product-local archive, so it's searchable inside a game workspace.
    • Distribution: through the existing product-skill route (the producer's template/skill-manifest/skill-manifest.json, registry/skills.yml, ADR-0017 materialization into scaffolds, and re-seeding via fsgg-sdd upgrade).
    • Existing skills: it becomes the umbrella over the existing algorithm skills (fs-gg-grids, fs-gg-collision, fs-gg-line-drawing, fs-gg-visibility) rather than duplicating them.
  3. A growth loop. Framework Deliveries that implement or tune an algorithm add or update an entry at closure, and product workspaces have a documented route to contribute entries upstream.

The framework Atlas holds only the decisions about this capability, as pointers. It is not the knowledge pack.

Source: the owner's request on 2026-11-01. The pack must be available in product workspaces, not only in the framework Atlas.

Acceptance

  • A freshly scaffolded fs-gg-fable-game workspace contains the skill and a searchable pack, and can reference the library.
  • At least 15 entries are seeded with tested implementations harvested from existing reviewed code (RuneScape A* with doors, the behaviour and arbitration model, nearest queries, the grids, collision and visibility skills).
  • An existing game workspace receives updates via fsgg-sdd upgrade.
  • The capture rule is active.

Activity

  1. 34 remaining items

  2. added sub-issues on Nov 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions