Repository navigation
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: luvs01/opencodex/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (2)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughXML credential redaction now uses a separate scanner to check tag attributes in decoded and raw input. A performance regression test covers repeated unterminated tags that do not contain credential labels. ChangesXML credential redaction
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Suggested reviewers: Merge Risk: ⚪ Minimal · up to The XML scanning change addresses repeated unterminated tags while retaining credential masking. No actionable issue prevents merging after normal checks. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
✅ Deterministic PR hygiene checks passed. |
| const started = performance.now(); | ||
| expect(redactSecretString(input)).toBe(input); | ||
| expect(performance.now() - started).toBeLessThan(1_000); |
There was a problem hiding this comment.
|
@coderabbitai review |
✅ Action performedReview finished.
|
* fix(redaction): bound XML identifying-attribute scans Carry luvs01#691 at f42e713. Replace wall-clock regression with delimiter-work accounting and preserve malformed/escaped credential coverage. * fix(redaction): recognize quoted XML tag delimiters Scan tag terminators outside quoted values, cover credential masking after embedded delimiters, and count manual character work in linear-scaling regressions.
Motivation
Description
maskXmlIdentifyingAttribute) that scans each tag once and preserves the folded matching and original-offset mapping used byfoldForMatching.maskOtherFramingsso credential masking is still applied for XML attribute and tag-name framings.name|key|idattributes, multipart, colon-labelled, and value patterns) while avoiding repeated suffix lookahead over unterminated tags.tests/lib/redact.test.tsthat asserts repeated unterminated tags (e.g."<a ".repeat(8000)) are scanned in bounded time and unchanged when not credential-bearing.Testing
./node_modules/.bin/bun test tests/lib/redact.test.ts tests/responses/responses-canonical-nonstream.test.ts tests/responses/sse-failed-tail.test.tsand observed the focused runs pass (139 passed, 0 failed).bun x tsc --noEmit, structure verification withbun run structure:check, and privacy scan withbun run privacy:scan, all of which completed successfully for the modified areas.git diff --checkto confirm no whitespace/patch issues; the full repository test run was not used to gate this focused fix because some unrelated integration tests failed in this checkout; the redaction- and delivery-focused tests and typecheck passed.Codex Task
Summary by CodeRabbit