Skip to content

parseFocusManifest's emptiness check omits fairnessAnalytics, misreporting present:false #8366

Description

@JSONbored

Context

packages/loopover-engine/src/focus-manifest.ts's parseFocusManifest (lines 4003-4032) has an
aggregate condition that decides whether to emit a "Manifest contained no recognized focus fields..."
warning and force manifest.present = false. The condition checks !manifest.X.present for every
other optional block — !manifest.gate.present, !manifest.publicStats.present,
!manifest.draftFlow.present, ... !manifest.federatedIntelligence.present (full list spans lines
4011-4028) — but fairnessAnalytics is missing from this list, even though it is parsed and assigned
just a few lines earlier (fairnessAnalytics: parseFairnessAnalyticsConfig(record.fairnessAnalytics, warnings), line 3993) exactly like every other optional block.

Concrete failure case: a .loopover.yml containing only a populated fairnessAnalytics: block
(e.g. fairnessAnalytics: { enabled: true }) and nothing else is correctly parsed into
manifest.fairnessAnalytics = { present: true, enabled: true }, but because fairnessAnalytics isn't
part of the aggregate emptiness check, the condition still evaluates to "nothing recognized was
found," so the manifest is incorrectly marked present: false and a misleading "no recognized focus
fields" warning is emitted — even though a real, populated, correctly-parsed field exists.

test/unit/focus-manifest.test.ts has a dedicated "makes the manifest present" test for features,
experimental, contentLane, repoDocGeneration, reviewRecap, and other sibling blocks (lines
1573-2070+), but no equivalent test exists for fairnessAnalytics, confirming this was missed rather
than intentional.

Requirements

  • Add !manifest.fairnessAnalytics.present to the aggregate emptiness-check condition in
    parseFocusManifest, in the same position/style as every other block already listed there.
  • Do not change parseFairnessAnalyticsConfig itself or any other block's condition — this issue is
    scoped to adding the missing check for fairnessAnalytics only.

Deliverables

  • fairnessAnalytics included in the aggregate !manifest.X.present condition in
    parseFocusManifest.
  • A new test in test/unit/focus-manifest.test.ts mirroring the existing "makes the manifest
    present" tests for sibling blocks (e.g. features, contentLane) — asserting a manifest
    containing only a populated fairnessAnalytics: block sets manifest.present = true and emits
    no "no recognized focus fields" warning.

Test Coverage Requirements

This repo's Codecov patch gate is 99%+ of changed lines and branches
(packages/loopover-engine/src/** is covered). The new condition term must be exercised by both the
new test above (fairnessAnalytics-only manifest → present) and confirm the existing "truly empty
manifest → not present" test still passes unmodified.

Expected Outcome

A .loopover.yml whose only recognized content is a fairnessAnalytics: block is correctly marked
present: true with no spurious "no recognized focus fields" warning, matching every other optional
manifest block's behavior.

Links & Resources

  • packages/loopover-engine/src/focus-manifest.ts:4003-4032 — the aggregate condition to fix
  • packages/loopover-engine/src/focus-manifest.ts:3993 — where fairnessAnalytics is parsed
  • test/unit/focus-manifest.test.ts:1573-2070 — the sibling "makes the manifest present" tests to
    mirror

Metadata

Metadata

Assignees

No one assigned

    Labels

    gittensor:bugGittensor-scored bug fix — scores a 0.05x multiplier.help wantedExtra attention is needed

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions