evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
{
"context": "Evaluates how the solution uses notion-client to run space-aware collection queries, attach the optional x-notion-space-id header, and surface task summaries directly from Notion data. Scoring checks correct use of getCollectionData options for scoping, filtering, limiting, ordering, and mapping record map results.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Space header",
"description": "Passes spaceId into NotionAPI.getCollectionData (or fetch) so the client injects the x-notion-space-id header for scoped queries, and omits that header when spaceId is undefined.",
"max_score": 30
},
{
"name": "View filters",
"description": "Uses getCollectionData collectionView/query options (e.g., query.filter plus searchQuery) to push both status filtering and free-text search into the Notion request instead of filtering the results locally.",
"max_score": 20
},
{
"name": "Limit usage",
"description": "Supplies the limit parameter supported by getCollectionData (or loader.limit) to bound the number of records returned by Notion before any local processing.",
"max_score": 15
},
{
"name": "Server ordering",
"description": "Requests descending last_edited_time ordering via collection view sort parameters passed to getCollectionData so Notion returns items in the desired order rather than relying only on local sorting.",
"max_score": 15
},
{
"name": "Record mapping",
"description": "Builds TaskSummary fields from the ExtendedRecordMap returned by getCollectionData, pulling property values and the spaceId from recordMap.collection/block data instead of hardcoding or mocking values.",
"max_score": 20
}
]
}