Skip to content

Feat/record cache extraction#6839

Draft
ekjotmultani wants to merge 4 commits intofeat/amplify-firehose-client-featurefrom
feat/record-cache-extraction
Draft

Feat/record cache extraction#6839
ekjotmultani wants to merge 4 commits intofeat/amplify-firehose-client-featurefrom
feat/record-cache-extraction

Conversation

@ekjotmultani
Copy link
Copy Markdown
Member

Issue #, if available:

Description of changes:

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@ekjotmultani ekjotmultani changed the base branch from main to feat/amplify-firehose-client March 26, 2026 23:49
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Mar 26, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 43.23%. Comparing base (deab741) to head (24e1cfe).

Additional details and impacted files
@@                      Coverage Diff                      @@
##           feat/amplify-firehose-client    #6839   +/-   ##
=============================================================
  Coverage                         43.23%   43.23%           
=============================================================
  Files                                99       99           
  Lines                              7769     7769           
  Branches                           3400     3400           
=============================================================
  Hits                               3359     3359           
  Misses                             4410     4410           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@ekjotmultani ekjotmultani force-pushed the feat/record-cache-extraction branch 3 times, most recently from e43a418 to 24e1cfe Compare April 2, 2026 18:44
Create the Dart-only Firehose client package with:
- pubspec.yaml (SDK ^3.9.0, matching KDS dependency set)
- sdk.yaml for PutRecordBatch operation
- Generated Smithy SDK client (firehose_client, models, serializers)
- Firehose API limits (500 records, 1000 KB/record, 4 MB/batch)
- version.dart, analysis_options, dart_test.yaml, .gitignore
- Skeleton barrel export (amplify_firehose_dart.dart)
- Register Firehose component in root pubspec.yaml

No business logic yet — just the compilable package shell.
Analyzes cleanly with `dart analyze`."
…che_dart

Create amplify_record_cache_dart package with shared caching infrastructure:
- RecordCacheException hierarchy (const constructors)
- Record/RecordInput models (partitionKey optional, dataSize caller-computed)
- RecordStorage base + SqliteRecordStorage, InMemoryRecordStorage, IndexedDbRecordStorage
- RecordCacheDatabase (Drift, parameterized dbPrefix)
- Sender interface + SendResult (replaces KDS-specific PutRecordsResult)
- RecordClient, AutoFlushScheduler, FlushStrategy, FlushData, RecordData, ClearCacheData
- Platform resolution (VM/web/stub conditional exports)

Update amplify_kinesis_dart to depend on shared package:
- KinesisSender implements Sender interface (sendBatch replaces putRecords)
- Partition key validation moved from RecordStorage to AmplifyKinesisClient
- createKinesisRecordInputNow computes dataSize with partition key
- All test imports updated, zero behavioral change
The aft generate workflows command regenerated the entire dependabot.yaml
with entries for many unrelated packages. Reverting to keep this PR scoped
to the record cache extraction only.
@ekjotmultani ekjotmultani force-pushed the feat/record-cache-extraction branch from 24e1cfe to 31e487b Compare April 2, 2026 19:36
…lation

The barrel file was unconditionally exporting record_storage_indexeddb.dart
which imports dart:js_interop. This caused VM tests to fail with
"Dart library 'dart:js_interop' is not available on this platform".

IndexedDB storage is only reachable through the platform conditional
export (record_storage_platform_web.dart), not the barrel.
@ekjotmultani ekjotmultani changed the base branch from feat/amplify-firehose-client to feat/amplify-firehose-client-feature April 2, 2026 20:04
@ekjotmultani ekjotmultani force-pushed the feat/amplify-firehose-client-feature branch 3 times, most recently from a1791c7 to ebd1bf8 Compare April 17, 2026 15:43
@ekjotmultani ekjotmultani force-pushed the feat/amplify-firehose-client-feature branch from f8acaf2 to 02cde75 Compare April 21, 2026 22:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants