Skip to content

audit: phase 2 verification U01-U05 (round 01)#522

Closed
samtrion wants to merge 1 commit into
mainfrom
audit/phase2-r01-U01-U05
Closed

audit: phase 2 verification U01-U05 (round 01)#522
samtrion wants to merge 1 commit into
mainfrom
audit/phase2-r01-U01-U05

Conversation

@samtrion

Copy link
Copy Markdown
Contributor

Summary

Phase 2 verification for the first five usability assumptions from audit/assumptions/round-01-usability.md. Each was independently re-verified with file:line evidence; failing tests / repros were added but no production code was modified. Phase 3 builders will fix the underlying issues.

ID Status Evidence Failing test / repro
U01 CONFIRMED README.md:118-136 audit/repros/u01/dotnet build emits CS0535 x2 (CausationId, CorrelationId)
U02 CONFIRMED src/NetEvolve.Pulse/README.md:152-162; QueryCachingOptions.cs:10-59 audit/repros/u02/dotnet build emits CS1061 for options.JsonSerializerOptions
U03 CONFIRMED src/NetEvolve.Pulse/AssemblyScanningExtensions.cs:15 tests/NetEvolve.Pulse.Tests.Unit/Audit/U03_AssemblyScanningPackageNameTests.cs (fails 1/1)
U04 CONFIRMED src/NetEvolve.Pulse/Serialization/SystemTextJsonPayloadSerializer.cs:32-44 audit/repros/u04/ — AOT-annotated build emits zero IL2026/IL3050 warnings
U05 CONFIRMED src/NetEvolve.Pulse/Outbox/OutboxProcessorOptions.cs:10-99; OutboxExtensions.cs:51-61 tests/NetEvolve.Pulse.Tests.Unit/Audit/U05_OutboxProcessorOptionsValidationTests.cs (fails 4/4)

All assumptions confirmed: 5 CONFIRMED / 0 REFUTED / 0 NEEDS-NUANCE.

Test plan

  • dotnet build audit/repros/u01/U01Repro.csproj — observe CS0535 x2.
  • dotnet build audit/repros/u02/U02Repro.csproj — observe CS1061 x1.
  • dotnet build audit/repros/u04/U04AotRepro.csproj (AOT analyzers on) — observe zero IL2026 / IL3050 warnings.
  • dotnet run --project tests/NetEvolve.Pulse.Tests.Unit -- --treenode-filter "/*/*/U03_AssemblyScanningPackageNameTests/*" — 1/1 fails (XML doc mentions phantom NetEvolve.Pulse.Generators).
  • dotnet run --project tests/NetEvolve.Pulse.Tests.Unit -- --treenode-filter "/*/*/U05_OutboxProcessorOptionsValidationTests/*" — 4/4 fail (no OptionsValidationException).
  • dotnet build tests/NetEvolve.Pulse.Tests.Unit/NetEvolve.Pulse.Tests.Unit.csproj succeeds (new tests compile).

Verifies first five usability assumptions from
audit/assumptions/round-01-usability.md with file:line evidence and
adds failing tests / repros that demonstrate each defect.

- U01 CONFIRMED  README.md:118-136 Quick Use snippet fails CS0535 x2
  on CausationId/CorrelationId; never builds provider or dispatches.
  Repro: audit/repros/u01.
- U02 CONFIRMED  src/NetEvolve.Pulse/README.md:152-162 sets
  QueryCachingOptions.JsonSerializerOptions which does not exist
  (CS1061). Repro: audit/repros/u02.
- U03 CONFIRMED  AssemblyScanningExtensions XML doc recommends
  'NetEvolve.Pulse.Generators' but the real package id is
  'NetEvolve.Pulse.SourceGeneration'. Failing TUnit test:
  tests/NetEvolve.Pulse.Tests.Unit/Audit/U03_AssemblyScanningPackageNameTests.cs.
- U04 CONFIRMED  SystemTextJsonPayloadSerializer uses reflection-mode
  STJ with no [RequiresUnreferencedCode]/[RequiresDynamicCode]; an
  AOT-enabled consumer build emits zero IL2026/IL3050 warnings.
  Repro: audit/repros/u04.
- U05 CONFIRMED  OutboxProcessorOptions has no IValidateOptions and
  AddOutbox() does not call ValidateOnStart(); BatchSize=0,
  PollingInterval=Zero, BackoffMultiplier=0, ProcessingTimeout=Zero
  all resolve cleanly. Failing TUnit tests:
  tests/NetEvolve.Pulse.Tests.Unit/Audit/U05_OutboxProcessorOptionsValidationTests.cs.

Phase 3 builders will fix each. This commit only adds verification
artifacts; no production code changed.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@samtrion samtrion requested a review from a team as a code owner May 26, 2026 09:12
@samtrion samtrion requested a review from Spacemonkay May 26, 2026 09:12
@coderabbitai

coderabbitai Bot commented May 26, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • state:ready for merge

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 638c502e-f38a-4b04-80d1-51dc51090584

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@samtrion samtrion closed this May 26, 2026
@samtrion samtrion deleted the audit/phase2-r01-U01-U05 branch May 26, 2026 09:13
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