Skip to content
CAI
Software that uses CAICheck a score

awlck/frankendrift

53.3

Weak · 1 October 2026

26.4k

lines of production code

VB.NET

with C#

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a collection of platform-specific command-line runners for ADRIFT interactive fiction adventures, featuring Glk-compatible interfaces on Windows, macOS, and Linux alongside a GTK-based console harness. Recent activity indicates a shift toward consolidating the codebase by removing legacy runner containers and standardizing on the new GlkRunner component. The project is currently focused on maintenance, dependency updates, and stabilizing the core execution logic rather than expanding new features.

Architecture

  • Container: ConsoleHarness (cli)
  • Container: FrankenDrift.GlkRunner.Gargoyle (cli)
  • Container: FrankenDrift.GlkRunner.WinGlk (cli)
  • Container: FrankenDrift.Runner.Gtk (cli)
  • Container: FrankenDrift.Runner.Mac (cli)
  • Container: FrankenDrift.Runner.Win (cli)

How it got here

July 2026 — FrankenDrift consolidation and dependency updates

4 changes.

This period focused on consolidating the FrankenDrift codebase, with the majority of activity involving behavioral changes and fixes within the GlkRunner component. The team also performed significant dependency maintenance, updating 16 manifests across 65 commits. Additionally, a new console harness was introduced to support running ADRIFT adventures, while the legacy FrankenDrift.Runner container was removed.

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Score

  • CAI 52 → 53 (+1.4)
  • Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.

Lenses

  • Code Health 60 → 60 (+0.0)
  • Architecture 95 → 95 (+0.0)
  • Maturity 51 → 51 (+0.0)
  • Readiness 39 → 41 (+2.8)
  • Security 95 → 96 (+1.3)

Resolved (2)

  • The method 'ReloadMacros' exists in both the UI form (frmRunner) and the core session (MainSession). While this might be a delegation pattern, the naming is identical for methods that likely operate at different layers of abstraction. If 'frmRunner.ReloadMacros' is a UI-triggered action that calls 'MainSession.ReloadMacros', the UI method should ideally reflect its role as a handler or command invoker (e.g., 'OnReloadMacros' or 'ExecuteReloadMacros') to distinguish the UI event from the business logic.
  • redundant comment (FrankenDrift.GlkRunner/FrankenDrift.GlkRunner/GlkSession.cs)

New (2)

  • Documentation: no installation or build instructions (README.md)
  • Inconsistent naming for application path properties/methods. Application.ExecutablePath and Application.StartupPath use noun phrases for properties, while MainSession.GetExecutableLocation uses a verb phrase and a different term ('Location' vs 'Path'). These likely refer to similar or overlapping concepts regarding the application's file location.

Architecture

  • Containers 0 added · 1 removed · contexts 0 added · 0 removed · edges 0 added · 0 removed

Removed containers (1)

  • cli:FrankenDrift.Runner

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

awlck/frankendrift was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 1 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 723dc515be2c7150a355c391c982fdc1397f5e7a — the exact code this score is about.
  • Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-e569280dd5e2.