Skip to content

test: wire orphaned core integration tests into fastskill-core#196

Merged
aroff merged 1 commit into
mainfrom
test/wire-orphaned-core-tests
Jun 25, 2026
Merged

test: wire orphaned core integration tests into fastskill-core#196
aroff merged 1 commit into
mainfrom
test/wire-orphaned-core-tests

Conversation

@aroff

@aroff aroff commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

Problem

The workspace-root tests/ tree was orphaned by the crate split. The root is a virtual manifest, so its tests/ is never compiled, and the files still import the pre-split crate name fastskill::. The result was a large suite that looked like coverage but never ran — including the tests that should guard the registry atomic-update path we just fixed in #195.

Change

Move the pure-core, currently-valid tests into crates/fastskill-core/tests/ (so Cargo compiles them) and rename fastskill::fastskill_core::.

10 files / 60 tests now actually run in CI (both the default and --all-features jobs):
index_manager_test, registry_atomic_test, registry_index_test, core_project_tests, cors_tests, git_consumption_test, integration_skill_project_toml_test, integration_unified_format_test, metadata_validation_test, skill_project_toml_test.

These directly exercise the atomic_update lock/temp fix from #195 (e.g. test_concurrent_writes_different_skills).

Bonus — two ignored tests that #194/#195 actually fixed

registry_atomic_test had two tests #[ignore]'d with TODOs describing the exact bugs those PRs fixed:

  • "concurrent writes to same skill not properly serialized"
  • "data loss in sequential operations (only 1 of 100 entries saved)"

Both pass now — un-ignored, so they become real regression coverage. The timing-sensitive perf SLA test (test_index_update_performance, SC-003 p95<100ms) is #[ignore]'d instead: it flakes under parallel nextest and isn't a correctness check.

Deferred (still orphaned — separate follow-ups)

  • core_manifest_tests — real API drift (FastSkillToolConfig gained auto_reindex); needs a test update.
  • tests/http/** and tests/unit/** — multi-file module trees that need an entry-point module to wire.
  • The CLI e2e suite (tests/cli/**, tests/cli_tests.rs) and the process/wiremock tests — need binary wiring, snapshot regeneration, and command-surface drift fixes (removed show/disable/sync, URL rename, etc.).

Verification

fmt clean; clippy clean on default and --all-features; all wired tests green on both feature configs; pre-push nextest gate passes.

🤖 Generated with Claude Code

The workspace-root `tests/` tree was orphaned by the crate split: the root is a
virtual manifest, so its `tests/` is never compiled, and the files still import
the pre-split crate name `fastskill::`. Result: a whole suite that looked like
coverage but never ran.

Move the pure-core, currently-valid tests into `crates/fastskill-core/tests/`
(so Cargo compiles them) and rename `fastskill::` -> `fastskill_core::`. 10
files / 60 tests now actually run in CI (both the default and --all-features
jobs), including index_manager/registry_atomic/registry_index — which directly
exercise the atomic-update lock/temp fix from #195.

Bonus: registry_atomic_test had two tests `#[ignore]`'d for the exact bugs that
#194/#195 fixed — "concurrent writes to same skill not properly serialized" and
"data loss in sequential operations (only 1 of 100 entries saved)". Both pass
now, so they're un-ignored and become real regression coverage for the fix. The
timing-sensitive perf SLA test (SC-003, p95<100ms) is `#[ignore]`'d instead — it
flakes under parallel nextest and isn't a correctness check.

Deferred (still orphaned, separate follow-up):
- core_manifest_tests — real drift (FastSkillToolConfig gained `auto_reindex`).
- tests/http/** and tests/unit/** — multi-file module trees needing an entry.
- The CLI e2e suite (tests/cli/**, tests/cli_tests.rs) and process/wiremock
  tests — need binary wiring, snapshot regen, and command-surface drift fixes.

fmt clean; clippy clean on default and --all-features; all wired tests green on
both feature configs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@aroff
aroff merged commit 725c932 into main Jun 25, 2026
10 checks passed
@aroff
aroff deleted the test/wire-orphaned-core-tests branch June 25, 2026 04:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant