Repository navigation
feat: share CCv2 path encoding and producer text filters - #7
Open
anilkreddy wants to merge 3 commits into
Open
anilkreddy wants to merge 3 commits into
anilkreddy wants to merge 3 commits into
Conversation
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.
Build and Deploy still duplicate raw CCv2 identifier validation/encoding, an angle-bracket text filter, and JWT-shaped token redaction. Add three opt-in public primitives:
encodeCcv2PathSegmentinccv2-client, plusstripAngleBracketTextandredactJwtLikeTokensinnotification-contract.Existing sanitizers, schema, transport behavior, package versions, dependencies, and consumer repositories are unchanged. Each Action retains its input diagnostics, masking, rendering, and sanitization order. The new APIs are explicitly documented as unreleased; consumers stay pinned to published 0.0.2 until a separate reviewed release and migration.
Capture 25 text cases and 29 identifier cases from the actual current Build/Deploy source, with revision and file hashes recorded in
docs/remaining-extraction-audit.md. Compatibility tests verify both consumer compositions, including a long-markup case where their existing truncation order produces different outputs. Use a linear word-run scanner for JWT-shaped matches: the original overlapping-prefix regex has quadratic worst-case behavior identified by CodeQL. Bounded differential cases preserve its match semantics; adversarial repeated-prefix tests cover the performance fix. Extend installed-tarball runtime/declaration checks for the new public exports. The audit also identifies later extraction candidates and code that should remain Action-specific.Validation: Node 24.21.0 / pnpm 12.6.0;
pnpm install --frozen-lockfile;pnpm quality(264 tests, 100% line coverage, 99%+ branch coverage); packed ESM/declaration/export-boundary checks; public scan; dependency audit;git diff --check. No packages, tags, or releases published; no live provider or Sandbox calls.