argilla
argilla copied to clipboard
[SPIKE] feat: add `count_submitted_responses` as property to `Records` database model
Description
This PR include the following changes:
- Added
count_submitted_responses
as a property ofRecord
database model.- This property requires record responses to be pre-loaded.
- This value is get from the database using a subquery.
- Added
count_submitted_responses
to search engine mapping. - Record
status
is exposed by API schemas and is calculated based incount_submitted_responses
column property fromRecord
database model.- This
status
is defined as a property insideRecord
database model and it's using thedataset
distribution strategy to calculate the value.
- This
Missing changes in this PR
- [ ] Make test suite to pass after changes.
- [ ] Add support to
status
value in search endpoints so we can filter bystatus=pending&response_status=pending
. - [ ] Check that we are refreshing the record
count_submitted_responses
values before indexing the record and add a partial update into the search engine when some associated entity (like responses) are create/updated/deleted for a record. (We probably should add a partial update of the index for this record attribute). - [ ] Change dataset progress metrics.
- [ ] Change user metrics.
Refs #5069
Type of change
(Please delete options that are not relevant. Remember to title the PR according to the type of change)
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Refactor (change restructuring the codebase without changing functionality)
- [ ] Improvement (change adding some improvement to an existing functionality)
- [ ] Documentation update
How Has This Been Tested
(Please describe the tests that you ran to verify your changes. And ideally, reference tests
)
- [ ] Test A
- [ ] Test B
Checklist
- [ ] I added relevant documentation
- [ ] follows the style guidelines of this project
- [ ] I did a self-review of my code
- [ ] I made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] I filled out the contributor form (see text above)
- [ ] I have added relevant notes to the CHANGELOG.md file (See https://keepachangelog.com/)