# Assessment 01 · Rendering, types and state

Attempt after lesson 05. Provisional 35–45 minutes. Six questions, two points each. Award one point for the correct conclusion and one for the explanation or evidence requested. Aim for at least 10/12 and correct answers to questions 2 and 5 before moving on; otherwise revisit the linked concept and retry with a new example.

1. A card receives places={0}. Its JSX uses `places && <p>Available</p>`. What can appear, and what explicit expression would show Currently full instead?
2. A developer asserts parsed JSON is CommunityEvent[]. Why does type-checking still not prove that a future response has valid IDs and place counts? Name the correct boundary.
3. A handler calls setCount(count + 1) twice while count is five. What next value is requested? How would two queued transformations differ?
4. The app stores query, visibleEvents and visibleCount separately. Which values usually belong in state, and what inconsistency can this design introduce?
5. A filtered event card owns expanded state and uses a stable ID key. Is that local state guaranteed to survive filtering the card out and back in? Explain the distinction between reordering and unmounting.
6. You store saved event objects in a second array. A newly loaded dataset changes an event's title. Explain a better state representation and how the saved UI obtains its current title.

Submit short explanations plus one runnable counter or identity experiment. [Answers and scoring guide](01-answers.html).
