Skip to content

Commit 47c8f7d

Browse files
committed
test(plugin): enable net10/CAP-10.0.0 (validated) + require tests reflect real runs
The publisher=exit fix made the CAP 10 trace shape identical to CAP 8, so net10.0 / CAP 10.0.0 now passes against the same expectedData -- validated by an actual run (run.sh: 2/2 passed). Enable it in support-version.list. CLAUDE.md: plugin test data must reflect an actual run (capture via the collector's /receiveData, validate via /dataValidate); never fabricate a trace, and only list a <TFM> <version> once it has actually been run and passed.
1 parent a467fa5 commit 47c8f7d

2 files changed

Lines changed: 10 additions & 7 deletions

File tree

CLAUDE.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,11 @@ themes/hugo-... , hugo.toml, i18n/ docs site theme + config (.github/workflows
4343
- Config: `skyapm.json` (or env `SKYWALKING__...`, double-underscore). Agent no-ops if `ServiceName`
4444
empty or `SkyWalking:Enable=false`. Full reference: `content/docs/guides/skyapm_config.md`.
4545
- Plugins: a fixed default set is auto-registered; others are opt-in via the `AddSkyAPM(ext => …)` lambda.
46+
- Plugin tests (`test/plugin/`): each scenario runs the **real** instrumented library against a dedicated
47+
mock collector and asserts the **real emitted segments**, version-by-version (`run.sh`). Tests must reflect
48+
an **actual run** — never fabricate or assume a trace: capture via the collector's `/receiveData`, validate
49+
via `/dataValidate`, and base `config/expectedData.yaml` on that. Only list a `<TFM> <version>` in
50+
`support-version.list` once it has actually been run and passed (don't declare versions you haven't validated).
4651
- The repo also pins per-TFM package versions via `Condition="'$(TargetFramework)' == 'netX'"` blocks.
4752
- Project is **independent** — reports to Apache SkyWalking but is not an ASF/SkyWalking sub-project.
4853
- Commits: do **not** add a `Co-Authored-By: Claude …` trailer (or any AI co-author trailer) to commit messages.
Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
# Library versions to test the CAP plugin against, one per line: "<TFM> <DotNetCore.CAP version>".
22
# Following the SkyWalking convention, list only the LATEST PATCH of each supported MINOR.
3-
# The plugin pins CAP 8.0.0 (net8) / 10.0.0 (net10) at compile time; thanks to NuGet
4-
# unification the scenario runs the plugin against the version listed here, so a newer CAP
5-
# than the plugin compiled against is genuinely exercised (this is what would catch #565).
3+
# ONLY list a version once it has actually been run and validated against the mock collector
4+
# (config/expectedData.yaml must reflect a real run, never an assumed shape) -- see CLAUDE.md.
5+
# The plugin pins CAP 8.0.0 (net8) / 10.0.0 (net10) at compile time; NuGet unification runs the
6+
# plugin against the version listed here, so a newer CAP than it compiled against is exercised.
67
net8.0 8.0.0
7-
# net10.0 10.0.0 — pending: CAP 10's in-memory queue dispatches the publish synchronously inside
8-
# the HTTP request, so the publisher span is an Exit (with a ref) rather than the standalone Entry
9-
# seen on CAP 8; this scenario's expectedData would need a net10 variant. (Validating net10 already
10-
# surfaced + fixed the CapCarrierHeaderCollection duplicate-sw8 bug.)
8+
net10.0 10.0.0

0 commit comments

Comments
 (0)