docs: fix stale rustdoc claims — phantom CACHEKIT_NAMESPACE, self-heal overstatement (LAB-682) - #65
Conversation
- Drop phantom CACHEKIT_NAMESPACE env var from interop_get rustdoc, the reject_namespaced_interop error message, the #[cachekit] macro rustdoc, and the README interop callout — from_env reads only API_KEY / API_URL / MASTER_KEY / PREVIOUS_MASTER_KEYS / DEFAULT_TTL; nothing reads NAMESPACE, so the docs taught a knob that does not exist. - Scope the macro self-heal claim to plaintext decode: only CachekitError::Serialization is treated as a miss and overwritten; on secure functions an AES-GCM auth failure raises CachekitError::Encryption, which propagates (fail-closed) until the entry expires — 'never an error loop' was an overstatement. Wording matches the docs-site fix (docs#10). The third claim in LAB-682 (16-byte key minimum in encryption_from_bytes) was already corrected on main — rustdoc says 32 bytes, matching EncryptionLayer::new enforcement. No runtime behaviour changes.
Kody Review CompleteGreat news! 🎉 Keep up the excellent work! 🚀 Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
WalkthroughThe change updates interop-mode documentation and its namespace configuration error message. It removes ChangesInterop documentation
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Closes LAB-682. Doc-truth fix: three rustdoc surfaces in this repo claimed behaviour the code does not have (trust-bug class per LAB-388; the docs-site pages were already fixed in cachekit-io/docs#10, this PR fixes the source comments).
Changes
CACHEKIT_NAMESPACEphantom env var removed —CachekitConfig::from_envreads onlyCACHEKIT_API_KEY/API_URL/MASTER_KEY/PREVIOUS_MASTER_KEYS/DEFAULT_TTL; nothing readsCACHEKIT_NAMESPACE. Removed from:crates/cachekit/src/client.rs—interop_getrustdoc# Errorssectioncrates/cachekit/src/client.rs—reject_namespaced_interoperror-message string (explicitly required by the issue AC; the only non-comment line touched — message content only, no logic change, andinterop_get_fails_closed_on_namespaced_clientasserts on theConfigvariant, not the text)crates/cachekit-macros/src/lib.rs—#[cachekit]macro rustdocREADME.md— interop callout (same lie, found by grep during implementation)crates/cachekit-macros/src/lib.rs) — "treated as a miss and overwritten (self-healing), never an error loop" now states what the generated code does: onlyCachekitError::Serializationself-heals; onsecurefunctions an AES-GCM auth failure raisesCachekitError::Encryption, which propagates (fail-closed) until expiry. Wording matches cachekit-io/docs#10.main(encryption_from_bytesrustdoc says ≥ 32 bytes, matchingEncryptionLayer::new); nothing to change.Verification
cargo fmt --all --checkclean;cargo clippyclean (pre-commit hooks).cargo doc --no-deps --workspacebuilds; the two remaining rustdoc warnings are pre-existing unresolved intra-doc links on untouched lines.cargo test --workspace— all green (169 tests + doc-tests, 0 failures).git diffis doc comments + README + the one error-message string the AC calls out.Summary by CodeRabbit
.namespace()setting.CACHEKIT_NAMESPACE.