Skip to content

chore: TimeWarp standards, TW#### diagnostics, modern CI#31

Merged
StevenTCramer merged 17 commits into
masterfrom
Cramer/2026-06-30/dev
Jul 15, 2026
Merged

chore: TimeWarp standards, TW#### diagnostics, modern CI#31
StevenTCramer merged 17 commits into
masterfrom
Cramer/2026-06-30/dev

Conversation

@StevenTCramer

Copy link
Copy Markdown
Contributor

Summary

Bring this repo onto current TimeWarp standards and free TWA for Architecture.

  • Repo standards audit — scaffold tools/dev-cli, banned APIs, memsearch hooks, workflow.yml rename, net10.0 alignment, VS Code window branding
  • 018 — Rename all diagnostic IDs to contiguous TW0001–TW0006 (drop TWA/TWG/TW1xxx); update Unshipped, docs, editorconfig
  • 019 — Thin GitHub Actions + Option A dev workflow (OIDC Trusted Publishing on release; clean → build → test; release push via GeneratePackageOnBuild)

Package version remains 1.0.0-beta.8 (greater than latest release v1.0.0-beta.7).

Diagnostic mapping

Old New Component
TWA001 TW0001 FileNameRuleAnalyzer
TWA002 TW0002 XmlDocsToMarkdownAnalyzer
TWG001 TW0003 MarkdownDocsGenerator
TW1001 TW0004 Interface delegation — partial
TW1002 TW0005 Interface not implemented
TW1003 TW0006 Multiple fields same interface

Breaking (beta): consumers must update dotnet_diagnostic.* keys / suppressions from old IDs to TW0001–TW0006.

CI

  • Path filters include tools/**, Directory.Packages.props, msbuild/**
  • OIDC nuget/login@v1 only on release (no PUBLISH_TO_NUGET_ORG)
  • Test console uses Analyzer ProjectReference so CI exercises in-tree generators

Test plan

  • dotnet build source/timewarp-source-generators/... -c Release succeeds
  • dotnet run --file tools/dev-cli/dev.cs -- workflow (PR mode) exit 0
  • Grep: no TWA001/TWA002/TWG001/TW1001–1003 on live product surface
  • CI PR job green on this branch
  • Ops: confirm NuGet Trusted Publishing for this package before first release push

Ops notes

  • Remove obsolete secret PUBLISH_TO_NUGET_ORG when convenient
  • Bump Version if beta.8 is already on nuget.org before publishing a release

Architecture now owns TWA####; this package must move TWA001/TWA002
(and clean TW/TWG stew) to a distinct prefix (recommend TWS).
Clarify: rename every diagnostic in this package to one prefix (TWS);
do not leave TWA001/TWA002. Product hygiene, not optional collision fix.
Recommend TW0001–TW0006; Architecture keeps TWA. Drop TWS suggestion.
Bring the repo to pass `ganda repo audit` by scaffolding the dev CLI,
standard MSBuild/CPM layout, banned-API rules, memsearch hooks, and VS Code
window branding, and by targeting net10.0 so Nuru/Amuru package assets resolve.
Track thin YAML + OIDC + dev-cli pipeline work after the standards audit
left the old PowerShell release flow in place.
Move task to in-progress for orchestration.
Capture inventory, ordered steps, verification, and out-of-scope after planning.
Drop TWA/TWG/TW1xxx so TimeWarp Architecture can own TWA. Single TW
family for TimeWarp.SourceGenerators analyzers and generators; update
Unshipped releases, docs, editorconfig, and open kanban references.
Match live interface-delegation generator wording after 018 rename review.
Document mapping, files, verification, and review outcomes before done.
Move task to done after rename implementation and review.
Capture peer template, T1 ProjectReference, workflow-command rewrite, and path/cache/auth decisions.
Replace hand-rolled PowerShell CI with peer-style OIDC workflow and
in-process dev workflow (clean/build/test/push). Wire test console as
Analyzer ProjectReference so CI verifies generators without local-feed
version chicken-and-egg.
Document YAML, workflow-command, T1 ProjectReference, verification, and ops notes.
Move task to done after Option A CI implementation and review.
NuGet fails with NU1301 when nuget.config points at artifacts/packages
and the directory is missing (CI checkout). Peers use nuget.org only;
PackageOutputPath still writes nupkgs for upload/push.
@StevenTCramer
StevenTCramer merged commit e13df5c into master Jul 15, 2026
1 check passed
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