Skip to content

Comments

Add proposalId filter to analytics endpoints and update ProposalStatus enum#38

Open
Andre-Diamond wants to merge 4 commits intomainfrom
feature/inject-epoch-data
Open

Add proposalId filter to analytics endpoints and update ProposalStatus enum#38
Andre-Diamond wants to merge 4 commits intomainfrom
feature/inject-epoch-data

Conversation

@Andre-Diamond
Copy link
Contributor

  • Introduced a new proposalId query parameter across multiple analytics endpoints to allow filtering by specific proposal IDs.
  • Updated the ProposalStatus enum in the schema to include a new status DROPPED.
  • Adjusted related models and response interfaces to accommodate these changes.

…s enum

- Introduced a new `proposalId` query parameter across multiple analytics endpoints to allow filtering by specific proposal IDs.
- Updated the `ProposalStatus` enum in the schema to include a new status `DROPPED`.
- Adjusted related models and response interfaces to accommodate these changes.
- Implemented API endpoints for triggering DRep info, inventory, lifecycle, epoch totals, missing epochs, and pool groups synchronization.
- Created corresponding cron jobs for automated synchronization of DRep info, inventory, lifecycle events, epoch totals, missing epochs, and pool groups.
- Each job and endpoint includes database-level locking to prevent concurrent executions and handles error logging and status updates.
- Adjusted DRep inventory sync to run hourly at :02 instead of :05
- Changed DRep info full refresh to run hourly at :22 instead of :15
- Updated epoch totals sync to run hourly at :12 instead of :10
- Modified DRep lifecycle events to run hourly at :37 instead of :25
- Altered pool group mappings to run hourly at :47 instead of :30
- Set missing epochs backfill to run every 6 hours at :33 instead of :00
- Changed DRep delegation change sync to run hourly at :57 instead of :40

refactor: update default schedules in job files to match new timings

- Updated default cron schedules in respective job files to reflect new timings for DRep and epoch analytics syncs.

feat: implement epoch totals completeness checks

- Added functions to check for incomplete epoch totals and determine if completeness is required based on epoch number.
- Integrated completeness checks into the sync process for epoch totals and missing epochs.

feat: enhance proposal ingestion with metadata handling

- Introduced logic to backfill missing proposal metadata fields during ingestion.
- Added a new function to finalize proposal status after vote sync, ensuring accurate status updates post-ingestion.

fix: ensure proper handling of proposal statuses during sync-on-read

- Updated sync-on-read logic to apply intended proposal statuses only after successful vote sync.
refactor: update cron job schedules for DRep and epoch analytics syncs
@Andre-Diamond
Copy link
Contributor Author

refactor: update cron job schedules for DRep and epoch analytics syncs

  • Adjusted DRep inventory sync to run hourly at :02 instead of :05
  • Changed DRep info full refresh to run hourly at :22 instead of :15
  • Updated epoch totals sync to run hourly at :12 instead of :10
  • Modified DRep lifecycle events to run hourly at :37 instead of :25
  • Altered pool group mappings to run hourly at :47 instead of :30
  • Set missing epochs backfill to run every 6 hours at :33 instead of :00
  • Changed DRep delegation change sync to run hourly at :57 instead of :40

refactor: update default schedules in job files to match new timings

  • Updated default cron schedules in respective job files to reflect new timings for DRep and epoch analytics syncs.

feat: implement epoch totals completeness checks

  • Added functions to check for incomplete epoch totals and determine if completeness is required based on epoch number.
  • Integrated completeness checks into the sync process for epoch totals and missing epochs.

feat: enhance proposal ingestion with metadata handling

  • Introduced logic to backfill missing proposal metadata fields during ingestion.
  • Added a new function to finalize proposal status after vote sync, ensuring accurate status updates post-ingestion.

fix: ensure proper handling of proposal statuses during sync-on-read

  • Updated sync-on-read logic to apply intended proposal statuses only after successful vote sync.

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