Skip to content

Phase/9a transaction ingestion validation - #11

Merged
Mujhtech merged 25 commits into
developmentfrom
phase/9a-transaction-ingestion-validation
Jul 31, 2026
Merged

Phase/9a transaction ingestion validation#11
Mujhtech merged 25 commits into
developmentfrom
phase/9a-transaction-ingestion-validation

Conversation

@Mujhtech

Copy link
Copy Markdown
Owner

No description provided.

@gitguardian

gitguardian Bot commented Jul 31, 2026

Copy link
Copy Markdown

⚠️ GitGuardian has uncovered 3 secrets following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

🔎 Detected hardcoded secrets in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
35590553 Triggered Generic High Entropy Secret 331ca05 protocol/fixtures/billing-ingestion/v1/invalid/client-observation-carries-purchase-token.json View secret
35590556 Triggered Generic High Entropy Secret 05b4263 protocol/fixtures/billing-ingestion/v1/invalid/malformed-token-digest-reference.json View secret
35590558 Triggered Generic High Entropy Secret 05b4263 protocol/fixtures/billing-ingestion/v1/trusted-server-observation.json View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secrets safely. Learn here the best practices.
  3. Revoke and rotate these secrets.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from ecfe845 to d75a169 Compare July 31, 2026 09:35
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch 2 times, most recently from d75a169 to 19359d8 Compare July 31, 2026 09:36
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from 19359d8 to 1f79573 Compare July 31, 2026 09:36
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from 1f79573 to 644e324 Compare July 31, 2026 09:37
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from 644e324 to 279e87e Compare July 31, 2026 09:37
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from 279e87e to 2bdbf11 Compare July 31, 2026 09:37
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from 2bdbf11 to 15a6d87 Compare July 31, 2026 09:38
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from 15a6d87 to 32c99ae Compare July 31, 2026 09:39
Base automatically changed from phase/8-operational-hardening to development July 31, 2026 09:39
Mujhtech added 11 commits July 31, 2026 10:39
Store server credentials with envelope encryption (AAD v2), Apple ASSN
intake with two-factor authentication, Google RTDN Pub/Sub pull consumer,
observation endpoints, Apple and Google validation workers, append-only
raw inputs, validation attempts, transaction facts and billing ledger,
deterministic product resolution with resolution snapshots, quarantine,
reconciliation, replay, REST resources with OpenAPI, and telemetry.
Store connection setup with write-only credentials and one-time endpoint
reveal, transaction ledger with dual environment badges, validation
attempts, quarantine with structurally-bounded recovery actions,
reconciliation runs, replay comparison, and billing health.
…lopes

Request and response bodies adopt the contract's observation and
submission-response record envelopes, client-asserted store environment
is rejected, quarantine records report store environment joined from
their raw input, and the OpenAPI document is verified self-consistent.
Mujhtech added 14 commits July 31, 2026 10:39
Evidence records three high-severity defects found by the demonstration:
replay appends no validation attempt, google token re-query
reconciliation is inert, and observation-sourced inputs fail credential
resolution.
…lution

Replay leases its own validation job and appends real attempts with a
computed comparison, google_token_requery filters by provider and source
and performs the Play API lookup, observations resolve credentials from
environment scope with a distinct missing-credential quarantine reason
(migration 00026), and validateGoogle falls back to a scoped application
identifier rather than the Pub/Sub project id. Demonstration re-run
passes all six flows.
Trusted-server purchase token with digest-match enforcement, lease-expiry
guard on replay job takeover, environment mode read from the environments
row, keyset-cursor pagination for replay and google reconciliation
(migration 00027), apple_transaction_history removed from the request
surface, full billing-disable gate with credential rule, reconciliation
conflict detection, per-application bid resolution, audit events for
replay and manual reconciliation, and a fix for apple credential
revocation blocked by the intake-token shape check.
Billing enablement panel and setup home, input-scoped validation
attempts, store environment passthrough, quarantine repair round trip
with provider product identifier, replay job status with polling,
cursor paging on quarantine and reconciliation lists, filtered-empty
ledger paging, vocabulary routing for operations enums, and nav
collapse when billing is disabled.
Hourly bucketing for unverified intake inputs, auth-failure retry cap
with credential-revoked quarantine, flat-string ledger detail constraint
(migration 00028), store-extension check excludes the trust anchor,
billingdemo behind a build tag, a billing settings read endpoint, and
runbook, observability, and security documentation updates.
Row-value keyset pagination across all billing lists with a cursor-walk
test, hourly bucketing for duplicate-intake ledger entries, fail-closed
billing-enabled reads, atomic disable with credential rule, explicit
apple credential application scope, privacy guide billing section, and
tests for wrong-application quarantine, googleplay client, error
redaction, and the trusted purchase-token path.
@Mujhtech
Mujhtech force-pushed the phase/9a-transaction-ingestion-validation branch from 32c99ae to 3e0c1e7 Compare July 31, 2026 09:39
@Mujhtech
Mujhtech marked this pull request as ready for review July 31, 2026 09:40
@Mujhtech
Mujhtech merged commit 66abfdc into development Jul 31, 2026
10 of 17 checks passed
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.

1 participant