Skip to content

feat(tools): add Slice 0 tooling skeleton - #13

Merged
Blind-Striker merged 8 commits into
masterfrom
feature/slice-00-tooling-skeleton
Aug 10, 2026
Merged

Blind-Striker merged 8 commits into
masterfrom
feature/slice-00-tooling-skeleton

Conversation

@Blind-Striker

Copy link
Copy Markdown
Collaborator

Summary

  • scaffold the net10.0 repo tooling library and TUnit command-surface tests
  • add the exact executable file-based entry with a fail-loud generate stub
  • record the cache-staleness verdict and add the Linux tooling-entry CI smoke
  • update ROADMAP for Slice 1 planning and the post-Slice-0 Slopwatch adoption evaluation

Verification

  • dotnet build --configuration Release (0 warnings, 0 errors)
  • dotnet test --solution OpenCode.slnx --configuration Release --no-build (6 passed)
  • dotnet format --verify-no-changes --no-restore (exit 0)
  • slopwatch analyze --no-baseline --fail-on warning (0 issues)

Recorded deviation

  • MA0048 cannot model the synthesized Program type behind the sealed entry filename; a file-scoped Level 1 arbitration keeps the rule enabled everywhere else
  • the cache probe observed referenced-library changes without an explicit build, so no routed-build mitigation was added

Closes #1

@Blind-Striker
Blind-Striker merged commit 7acbc2f into master Aug 10, 2026
3 checks passed
Blind-Striker added a commit that referenced this pull request Aug 15, 2026
Concrete unknown-carrier converters lacked HandleNull, so deserializing a
null token bypassed Read and returned null for a non-nullable carrier
(review blocker #14); neither converter validated a nested union's fixed
outer tag, so a contradicted discriminator rode into the carrier and
replayed on serialization (#13, folded). Carriers now emit HandleNull with
an explicit null-token rejection, and both the carrier and base converters
validate the fixed marker's presence, kind, and exact value while keeping
unknown-inner-marker tolerance and raw replay. All eight carriers
regenerate; regressions deserialize through the raw type info so the
wrapper's null coalesce cannot mask a bypass.
@Blind-Striker
Blind-Striker deleted the feature/slice-00-tooling-skeleton branch September 14, 2026 12:55
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.

Slice 0: Tooling skeleton — file-based entry + ToolApp + Tools.Tests

1 participant