Skip to content

Add oura periodic and personal work processors#951

Open
darinkrauss wants to merge 1 commit into
darin/refactor-oura-setupfrom
darin/add-new-oura-processors
Open

Add oura periodic and personal work processors#951
darinkrauss wants to merge 1 commit into
darin/refactor-oura-setupfrom
darin/add-new-oura-processors

Conversation

@darinkrauss
Copy link
Copy Markdown
Contributor

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR extends the Oura integration’s background ingestion by introducing two new work processors—periodic (recurring incremental pulls for selected data types) and personal (personal_info with hash-based de-dupe)—and wires them into setup + service initialization so they run automatically after an Oura account is connected.

Changes:

  • Add new Oura work processor implementations + factories for oura/data/work/periodic and oura/data/work/personal, including comprehensive unit tests.
  • Update Oura user setup work to enqueue the new periodic + personal work items after setup.
  • Register the new processor factories in the data service’s standard initialization.

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
work/base/processor_test.go Tightens gomock expectations to assert non-nil ctx/time args.
oura/user/work/setup/processor.go Enqueues periodic + personal data work after successful Oura setup.
oura/user/work/setup/processor_test.go Extends setup tests to cover periodic/personal work creation paths.
oura/data/work/personal/test/processor.go Adds test helpers for personal work metadata/object serialization.
oura/data/work/personal/processor.go Implements personal_info ingestion with scope gating + hash-based skip.
oura/data/work/personal/processor_test.go Adds unit tests for personal processor behavior and metadata validation.
oura/data/work/personal/personal_suite_test.go Adds Ginkgo suite bootstrap for personal package tests.
oura/data/work/personal/factory.go Adds processor factory + work.Create builder for personal work.
oura/data/work/personal/factory_test.go Adds tests for personal factory and work.Create construction.
oura/data/work/periodic/test/processor.go Adds test helpers for periodic work metadata/object serialization.
oura/data/work/periodic/processor.go Implements periodic ingestion with per-datatype start times + pagination tokens.
oura/data/work/periodic/processor_test.go Adds unit tests covering periodic paging, metadata updates, and failures.
oura/data/work/periodic/periodic_suite_test.go Adds Ginkgo suite bootstrap for periodic package tests.
oura/data/work/periodic/factory.go Adds processor factory + work.Create builder for periodic work.
oura/data/work/periodic/factory_test.go Adds tests for periodic factory and work.Create construction.
data/service/service/standard.go Registers periodic/personal processor factories during service init.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread oura/user/work/setup/processor.go
Comment thread oura/user/work/setup/processor.go
Comment thread oura/user/work/setup/processor_test.go
Copy link
Copy Markdown
Contributor

@toddkazakov toddkazakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nothing blocking, just one question

Comment thread oura/data/work/periodic/processor.go
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.

3 participants