Skip to content
This repository was archived by the owner on Oct 1, 2026. It is now read-only.

[CTX-0079] fix(campaign): redact before truncation and bound campaign data - #143

Merged
Xuepoo merged 1 commit into
mainfrom
carryctx/ctx-0079
Sep 26, 2026
Merged

Xuepoo merged 1 commit into
mainfrom
carryctx/ctx-0079

Conversation

@Xuepoo

@Xuepoo Xuepoo commented Sep 26, 2026

Copy link
Copy Markdown
Contributor

Closes #139

Priority: P1 | Area: area:devtools | Labels: P1,fix,area:devtools | Milestone: v0.1.0 | RFC: OQ-004 | Task: CTX-0079

Summary

Implements redaction-before-truncation for semantic previews, bounds campaign data cardinality/output, constructs child environments from allowlist, sanitizes human output, clears session state on reconnect, and makes unsupported trace/control paths explicit.

Changes

  • Rust (devtools-client): Enhanced redaction with normalization, separator extraction, multi-pass redaction logic
  • TypeScript (campaign.ts): Bounded output/envelopes/reports, allowlist-based child environment construction, session state management
  • TypeScript (redaction.ts): Redact-before-truncate for semantic previews
  • Tests: Synthetic secret/control sentinels, fake spawn environment, oversized arrays, reconnect, bounded cancellation

Testing

  • All quality gates passed (just check)
  • 493 TypeScript tests passed
  • 85 Rust tests passed
  • Synthetic fixtures for redaction validation

Review

Awaiting CI and independent review.

@Xuepoo Xuepoo added this to the v0.1.0 milestone Sep 26, 2026
@Xuepoo Xuepoo added area:devtools devtools area P1 Priority P1 fix Bug fix labels Sep 26, 2026
@Xuepoo
Xuepoo merged commit d0f6102 into main Sep 26, 2026
5 checks passed
@Xuepoo
Xuepoo deleted the carryctx/ctx-0079 branch September 26, 2026 00:53
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area:devtools devtools area fix Bug fix P1 Priority P1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[P1] Redact before truncation and bound campaign data

1 participant