build(ci): wire manifest:drift-check into the test:ci chain - #4042
Conversation
… YAML src/config/gittensory-repo-focus-manifest.ts bundles a fallback copy of the root .gittensory.yml for when the live repo file is unreachable, but nothing verified the two stayed in sync. Add scripts/check-manifest-drift.mjs to parse both with the yaml package and deep-compare the resulting objects, wire it into the test:ci chain next to docs:drift-check, and cover it with a focused test file mirroring check-docs-drift-script.test.ts.
Adds the manifest:drift-check script entry and inserts it into test:ci right after docs:drift-check, matching scripts/check-manifest-drift.mjs added in the previous commit.
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
|
Warning 🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨 ⏸️ Gittensory review result - manual review recommendedReview updated: 2026-07-07 13:09:38 UTC
⏸️ Suggested Action - Manual Review
Review summary Nits — 6 non-blocking
Review context
Contributor next steps
Signal definitions
🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4042 +/- ##
=======================================
Coverage 93.58% 93.58%
=======================================
Files 382 382
Lines 35534 35534
Branches 13028 13028
=======================================
Hits 33253 33253
Misses 1618 1618
Partials 663 663 🚀 New features to boost your workflow:
|
Summary
Closes #4008.
GITTENSORY_REPO_FOCUS_MANIFEST_YAMLinsrc/config/gittensory-repo-focus-manifest.ts) silently diverging from the real root.gittensory.ymlonce someone edited one and forgot the other. The bundled string exists so the focus-manifest engine still has a sane default when the live repo file is unreachable (local dev, pre-merge branches).scripts/check-manifest-drift.mjs: parses both with theyamlpackage (already a dependency) and deep-compares the resulting objects (not raw text, so comment-only/whitespace-only edits in either file never false-fail), with a hand-authored.d.mtssidecar matching this repo's existing convention for.mjsscripts imported by tests (seecheck-docs-drift.d.mts,check-schema-drift.d.mts, etc.).npm run manifest:drift-checkintotest:ci.Test plan
npm run typecheck— cleannpx vitest run test/unit/check-manifest-drift-script.test.ts— 7/7 passed, including a real subprocess run against the actual current repo state (confirms no live drift today)npm run manifest:drift-check— passes against the real reponpm run command-reference:check— clean, no drift from the new script