Class: Textus::Doctor::Check::GeneratorDrift

Inherits:
Textus::Doctor::Check show all
Defined in:
lib/textus/doctor/check/generator_drift.rb

Overview

ADR 0079: generator/build drift — a derived/external entry whose sources changed since its generated.at. Dependency-based (not age-based), so it stays OUT of the lifecycle/freshness unification and lives here as a health signal. This is the surviving home for what the removed ‘stale` verb reported.

Instance Method Summary collapse

Methods inherited from Textus::Doctor::Check

#initialize, name_key

Constructor Details

This class inherits a constructor from Textus::Doctor::Check

Instance Method Details

#callObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/textus/doctor/check/generator_drift.rb', line 10

def call
  gen = Textus::Domain::Staleness::GeneratorCheck.new(
    manifest: manifest,
    file_stat: Textus::Ports::Storage::FileStat.new,
  )
  manifest.data.entries.flat_map { |m| gen.rows_for(m) }.map do |row|
    {
      "code" => "generator_drift",
      "level" => "warning",
      "subject" => row["key"],
      "message" => row["reason"],
      "fix" => "rebuild the entry: `textus build`",
    }
  end
end