---
# System prepended metadata

title: Introduce key elements that influence property price vs city average 146
tags: [work]

---

---
tags: work
---

# Introduce key elements that influence property price vs city average 146

https://casavo.atlassian.net/browse/TSELLERS-146

[![](https://i.imgur.com/C6ax5oO.png)](https://i.imgur.com/6CdhrJQ.png)

![](https://i.imgur.com/nntnxKp.png)


# integration tasks

- [ ] connect the APIs with the correct schema to the FE
- [ ] write e2e


# front-end :flower_playing_cards: 
https://github.com/casavoco/flow-frontend

- [ ] add icons for every keyfeature
- [x] upgrade/define schema api @alex
- [x] define thresoold value @alex -> will wait until we have the feature working in staging
- [x] implement ui [figma](https://www.figma.com/file/LC0e0zbZZ2DRpnbPBCwO4y/Evaluation-flow?node-id=1232%3A7)
    - [x] tab component: exist?
    - [x] generalize carousel and add custom react hooks
    - [x] show key features with old carousel
    - [x] tab panel
        - [x] all graphic style
            - [x] minus/plus icons
            - [x] fix key feature long names exit from card
            - [x] tab buttons
            - [x] add sentences inside the tab panel
                - [x] add translations
                - [x] change copy based of tabs
                - [x] style
                - [x] test
            - [x] the two carousel must be height egual? @max
            - [x] add icons to each feature
    - [x] extract tab panel in a component?
- [x] business logic to show maximum 5 elements + hide everything when we  don't have both positive and negative elements
    - [x] show only one tab when we have only one info
    - [x] hide tab panel when out of area 
    - [x] minimum 1 positive and 1 negative
    - [x] maximum 5 and 5
    - [x] thresoold

- [x] events [event table](https://docs.google.com/spreadsheets/d/1_YDhV0mMGm0qY7JnLyOhEDb5nJnEyzBfPgfq2wOss_M/edit#gid=1202899640)
    - [x] similar properties tab
    - [x] your house tab
    - [x] new two carousels scroll pros/cons
    - [x] ask @max why duplicated event on expand comparables
    - [x] :question: do we need to change the event name, currently we send: SellFlowValuation/Expand/Comparables @max
    - [x] test
- [x] [translations](https://docs.google.com/spreadsheets/d/1bgrqXzYU9S63dXBfliZnJxchwgl_F48kOI0w5bqCIIc/edit#gid=505106195) 
    - [x] key_feature name translation
- [x] tests?

# backend

## worms @katia :gem: 
https://github.com/casavoco/worms/tree/master/lib/worms/services/eva


- update [swagger](https://private-api-worms.staging.k8s.casavo.com/swagger)
- update the worms evaluate route with new scheme
- see if we can test the interaction with eva
- payload example:

```typescript=
type Feature = {
   name: 'distance_from_water' | 'pool' | '...',
   evaluation_impact: number // from -Infinity...+Infinity
}

const payload = {
  key_features: Feature[]
}
```

## eva-http :snake: 
https://github.com/casavoco/eva-http-api

- update swagger
- update the eva-http evaluate route with new scheme @alex
  ```json=
   eg.
   "feature_importance": {"shap": [{"name":"", "weight": -1000, "impact": -0.5}]}  
  ```   

## eva-cta :snake: 
https://github.com/casavoco/eva-ml-cta

- [x] modify business logic to return key features @alex
- [ ] :mens: **E2E** how will we test every scenario? (both comparables and key elements, only one, only the other, none) @alex
    - [ ] can we extract a testing data set?