Skip to content

Exclude unauthorized streams from catalog#58

Open
MuralidharT03 wants to merge 3 commits into
masterfrom
SAC-30993-exclude-unauth-streams
Open

Exclude unauthorized streams from catalog#58
MuralidharT03 wants to merge 3 commits into
masterfrom
SAC-30993-exclude-unauth-streams

Conversation

@MuralidharT03

@MuralidharT03 MuralidharT03 commented Jun 12, 2026

Copy link
Copy Markdown

Description of change

This PR updates the tap’s discovery flow to exclude streams the provided AppsFlyer credentials cannot read, by probing each stream during discovery and pruning inaccessible streams from the generated Singer catalog.

Changes:

  • Add per-stream access probing (BaseStream.check_access() + Client.probe_request()) and exclude inaccessible streams during discovery.
  • Update CLI discovery wiring to pass the active Client into discovery.
  • Add unit tests covering access checks, pruning logic, and do_discover() output.

Jira: SAC-30993

Manual QA steps

Risks

Rollback steps

  • revert this branch

AI generated code

https://internal.qlik.dev/general/ways-of-working/code-reviews/#guidelines-for-ai-generated-code

  • this PR has been written with the help of GitHub Copilot or another generative AI tool

Copilot AI left a comment

Copy link
Copy Markdown

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 updates the tap’s discovery flow to exclude streams the provided AppsFlyer credentials cannot read, by probing each stream during discovery and pruning inaccessible streams from the generated Singer catalog.

Changes:

  • Add per-stream access probing (BaseStream.check_access() + Client.probe_request()) and exclude inaccessible streams during discovery.
  • Update CLI discovery wiring to pass the active Client into discovery.
  • Add unit tests covering access checks, pruning logic, and do_discover() output.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tests/unittests/test_discovery.py Adds unit tests for discovery access checks, pruning behavior, and do_discover() integration.
tap_appsflyer/streams/abstracts.py Introduces BaseStream.check_access() to probe stream accessibility.
tap_appsflyer/discover.py Applies access checks during discovery and prunes inaccessible streams/children from the catalog.
tap_appsflyer/client.py Adds probe_request() for single-shot discovery probes.
tap_appsflyer/init.py Passes client through do_discover() into discover(client).
setup.py Bumps package version, changes requests pin, and adds dev extras.
.github/copilot-instructions.md Adds internal contributor guidance for implementing Singer taps/targets.

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

Comment thread tap_appsflyer/discover.py Outdated
Comment thread tap_appsflyer/streams/abstracts.py
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