Skip to content

feat(miner-foundation): extract focus-manifest parse/compile core into gittensory-engine #2280

Description

@JSONbored

Move the parse-and-compile core of src/signals/focus-manifest.ts (1665 lines total) into packages/gittensory-engine/src/focus-manifest.ts — specifically parseFocusManifest, parseFocusManifestContent, the internal parseGateConfig/parseFeaturesConfig/parseSettingsOverride/parseReviewConfig/parseReviewPreMergeChecks/parseManifestGlobList family, matchesManifestPath, compileFocusManifestPolicy, and isFocusManifestPublicSafe. Given the file's size, this issue covers the parse/compile core only (roughly the first two-thirds of the file); buildFocusManifestGuidance and deriveContributionLanes can follow in a separate issue if the diff would otherwise exceed the 1000-LOC/10-file cap. This module is the direct pattern-template for the MinerGoalSpec parser (a separate issue in this phase parses .gittensory-miner.yml the same way) — extracting it first lets that parser import the shared glob/path-matching helpers instead of reimplementing them.

Deliverables

  • packages/gittensory-engine/src/focus-manifest.ts with the parse/compile core ported verbatim (same function names, same doc comments, same defaults).
  • src/signals/focus-manifest.ts re-exports the ported functions from @jsonbored/gittensory-engine for every name moved, keeping every other export (buildFocusManifestGuidance, deriveContributionLanes, the resolveReview* helpers, etc.) defined locally as before, importing the moved pieces from the engine.
  • The full existing focus-manifest test suite passes unmodified.
  • packages/gittensory-engine/src/index.ts re-exports the new module.
  • A short doc comment in the engine copy notes it is the parse-pattern template for the upcoming MinerGoalSpec (.gittensory-miner.yml) parser.

References

  • src/signals/focus-manifest.ts (1665 lines total; lines 300, 392-995 are the parse/compile core targeted here) — the exact functions to port.
  • packages/gittensory-engine/ — created by the package-skeleton issue (must land first).
  • Phase description: "MinerGoalSpec (.gittensory-miner.yml) schema + parser (mirror src/signals/focus-manifest.ts's parse pattern)" — this extraction is the prerequisite for that mirroring.

Metadata

Metadata

Assignees

No one assigned

    Labels

    gittensor:featureGittensor-scored feature linked to a feature issue — scores a 0.25x multiplier.help wantedExtra attention is needed

    Projects

    Status
    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions