Skip to content

e2e provisioning seed (DEFAULT_PODNOTES_DATA) drifted from DEFAULT_SETTINGS — fails CI on master #191

Closed

Description

@chhoumann

Summary

scripts/provision-obsidian-e2e-vault.test.ts > "seeds a data.json that mirrors the real DEFAULT_SETTINGS" fails on master, turning the Test CI check red for every open PR (it has nothing to do with the PR under test).

The e2e seed DEFAULT_PODNOTES_DATA in scripts/provision-obsidian-e2e-vault.mjs is a hand-maintained copy of DEFAULT_SETTINGS (src/constants.ts). Several recently-merged PRs changed DEFAULT_SETTINGS without updating the seed, so the two have drifted:

Field DEFAULT_SETTINGS seed DEFAULT_PODNOTES_DATA Source
autoQueue true missing #108
feedNote { path, template } missing #163
download.path "PodNotes/{{podcast}}/{{title}}" "" #183

The assertion fails with expected { …(17) } to deeply equal { …(19) }.

Reproduce

npm run test    # or: npx vitest run scripts/provision-obsidian-e2e-vault.test.ts

Fails on a clean master checkout (confirmed by stashing unrelated branch changes).

Immediate fix

Re-sync DEFAULT_PODNOTES_DATA with DEFAULT_SETTINGS (add autoQueue: true, the feedNote object, and the real download.path).

Root-cause fix (suggested follow-up)

The .mjs seed can't import the TS DEFAULT_SETTINGS at Node runtime, which is why it's duplicated and keeps drifting. Worth making drift impossible — e.g. generate the seed from DEFAULT_SETTINGS at provision time (the test already imports it via vitest/TS), or move the canonical default to a .mjs/JSON module both sides import — so this class of failure can't recur whenever a new setting is added.

Activity

  1. github-actions commented on Jun 22, 2026

    @github-actions
    Contributor

    🎉 This issue has been resolved in version 2.17.0 🎉

    The release is available on GitHub release

    Your semantic-release bot 📦🚀

  2. chhoumann commented on Oct 11, 2026

    @chhoumann
    OwnerAuthor

    Re-checked on current master (07b2812). The seed now lives in obsidian-e2e.config.mjs, and scripts/e2e-config.test.ts compares it with DEFAULT_SETTINGS. The test passes locally and the Test workflow is green on master.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions