Repository navigation
docs: Add KDoc documentation to core Kotlin Bulk CDK interfaces - #69751
Aaron ("AJ") Steers (aaronsteers) wants to merge 4 commits into
Conversation
- Update DestinationWriter interface with lifecycle documentation - Update StreamLoader interface with per-stream handler documentation - Update TableOperationsClient interface with database operations documentation - Add detailed parameter descriptions and usage examples - Focus on public-facing APIs used by connector developers Co-Authored-By: AJ Steers <aj@airbyte.io>
Original prompt from AJ Steers |
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
👋 Greetings, Airbyte Team Member!Here are some helpful tips and reminders for your convenience. Helpful Resources
PR Slash CommandsAirbyte Maintainers (that's you!) can execute the following slash commands on your PR:
|
Co-Authored-By: AJ Steers <aj@airbyte.io>
|
/format-fix |
Co-Authored-By: AJ Steers <aj@airbyte.io>
|
Deploy preview for airbyte-kotlin-cdk ready! ✅ Preview Built with commit 5b054fc. |
Ryan Br... (tryangul)
left a comment
There was a problem hiding this comment.
The interfaces are misleading and have tricked devin. Given we're in the process of refactoring everything, I'd hold off on comment churn until we've settled things.
This comment was marked as outdated.
This comment was marked as outdated.
Totally okay. Plan was not to merge this directly but to see how close Devin would get with zero manually-injected context - and at some point do a mob-coding fix-up to whatever Devin guessed wrong. Now that automated CDK docs are live at https://airbyte-kotlin-cdk.vercel.app, all subsequent inline docs improvements will land there in the auto generated API docs. |
|
Closing for now. We can re-open or start fresh. Also - confirmed above that the new CDK docs Vercel preview builds appear to be working correctly. |
What
Adds comprehensive KDoc documentation to three core Kotlin Bulk CDK interfaces that are directly used by destination connector developers:
DestinationWriter- Main entry point for destination connectorsStreamLoader- Per-stream loading lifecycle handlerTableOperationsClient- Database-agnostic table operations interfaceThis documentation will help connector developers understand the public-facing APIs and will eventually render into auto-generated KDoc documentation.
Related to the broader effort to improve CDK documentation for both LLM consumers and human contributors. Python CDK documentation was completed in airbytehq/airbyte-python-cdk#852.
How
@paramand@returntags where appropriateReview guide
Critical items to verify:
DestinationWriter.kt- Verify the documented lifecycle order (setup → createStreamLoader → teardown) matches actual framework behaviorStreamLoader.kt- Confirm the relationship betweenclose()andteardown()is accurately described. The original code had a comment that "hadNonzeroRecordsis only used by legacy typing and deduping" - I removed this in favor of a more general description. Please verify this is correct.TableOperationsClient.kt- Validate that operation descriptions match actual database behavior, especially:overwriteTable- Does it truly atomically replace and drop the source table?copyTable- Is it really INSERT without deduplication?upsertTable- Does it handle primary keys as described?Documentation accuracy concerns:
User Impact
Connector developers will have better documentation when implementing destination connectors using the Kotlin Bulk CDK. This documentation will eventually be published as auto-generated KDoc.
No functional changes - documentation only.
Can this PR be safely reverted and rolled back?
Requested by: AJ Steers (Aaron ("AJ") Steers (@aaronsteers), aj@airbyte.io)
Session: https://app.devin.ai/sessions/714fb9c366844fd49a0196e61f99f639