Conversation
Adds specification-driven tests (spec_test.go) for three packages, derived from each package's README.md contract, not implementation details. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Specification Test Enforcement
This PR adds specification-driven tests for three packages. All tests are derived from each package's
README.mdspecification, not from implementation source code.actionpinsagentdrainfileutilTest Derivation
All tests use the
TestSpec_prefix and are table-driven, derived exclusively from README.md behavioral contracts. No internal/unexported functions are tested.Spec-Implementation Mismatches
actionpinsGetActionPinsByReporeturnsnilfor unknown repos — The spec states "Returns all pins for a repository" without specifying nil vs empty slice. The implementation returnsnil(map lookup for missing key). Annotated with// SPEC_MISMATCH.ResolveActionPinin strict mode returns("", nil)for unknown pins — The spec says "fallback behavior controlled byPinContext.StrictMode", implying strict mode errors. The implementation emits a warning to stderr and returns("", nil)in both strict and non-strict modes when no embedded pin is found. Annotated with// SPEC_MISMATCH.Round-Robin State
actionpins,agentdrain,fileutilgitutil,parser,tty,types,typeutil,workflowReferences:
Auto-generated by Package Specification Enforcer workflow