827. Lesson identity
828. Learning objective
After this lesson, you can define a navigation contract for a bounded route by separating spatial representation, destination intent, movement conditions, arrival evaluation, and the contract owner’s permitted transitions.
829. Why this matters
A map describes where locations and routes are represented; it does not decide what the world currently permits. A destination is an intent, not proof that an actor has arrived. If these ideas are combined, a vehicle can appear to reach a marker while its route is blocked, its intent is stale, or its movement does not satisfy the declared arrival rule.
A bounded contract makes each decision inspectable: which system holds the destination, which observations are used to evaluate arrival, and which system may change the navigation state.
830. Prior knowledge
You should already be able to bound a world behavior using one owner, limited state, permitted transitions, and observable consequences. This lesson builds on 2.10 L2 — Bound the world requirement. You do not need to implement a map, vehicle, or pathfinding system.
831. Core concept
A navigation design has three distinct input concerns:
- Spatial representation: coordinates, bounds, route geometry, obstacles, and landmarks.
- Movement state: the actor’s position, motion, operational condition, and current movement permissions.
- Destination intent: the destination or route the actor is currently meant to follow.
A fourth element surrounds those inputs: the bounded navigation contract. The contract declares its owner, accepted observations, permitted transitions, and observable results. It is not another map layer and is not interchangeable with a destination marker.
A map can contain a destination marker without making the destination reachable. An active destination does not authorize movement. Matching a destination coordinate does not establish arrival unless the declared arrival conditions are also satisfied.
For a bounded route, specify:
- the system that owns the navigation attempt and active destination intent;
- the coordinate frame, distance metric, units, and valid route bounds;
- the destination representation;
- the movement and world-state conditions that permit or block progress;
- the evaluator that observes arrival inputs;
- the arrival criteria and reported result;
- the transitions the owner may perform after accepting that report;
- the observable results for completion, blockage, cancellation, or failure.
832. Ownership and arrival evaluation
The navigation owner holds the active destination intent and owns the contract state. Only that owner performs the contract’s declared transitions.
The arrival evaluator observes declared inputs. In this lesson’s model, those inputs are:
- the actor position and destination position in the same coordinate frame;
- distance between those positions, measured with the declared metric and units;
- actor speed in declared units;
- route validity, including whether the route is open;
- the actor’s operational condition.
The evaluator reports whether the arrival criteria are met. It does not silently replace the destination, cancel the route, or complete the contract. The navigation owner accepts the report and performs only a declared transition, such as active to complete. This evaluator may be implemented inside or outside the owning system; the important boundary is that observation does not acquire authority merely because it produced a result.
833. Mental model
Use three input concerns plus one bounded contract:
| Element | What it represents | Governing question | Example |
|---|---|---|---|
| Map data | Coordinates, bounds, route geometry, obstacles, and landmarks | Where can locations and routes be represented? | A bounded world-space route with named endpoints |
| Movement state | Current position, motion, operational state, and movement permission | What is the actor doing, and may it continue? | The vehicle is operational and the route is open |
| Destination intent | The navigation owner’s current target and intent status | Which destination is active? | Target north_outpost, intent active |
| Bounded contract | Accepted observations, permitted transitions, and terminal results | Which declared result follows from the current inputs? | The owner changes active to complete after a valid arrival report |
The first three elements supply distinct inputs. The bounded contract determines how the owner may interpret their reports. Map data can locate a destination without owning the intent. Movement state can report that a vehicle is stopped without completing the route. The arrival evaluator can report that criteria are met without gaining authority to change the contract.
Ask these questions in order:
- What coordinate frame, units, bounds, and route facts exist?
- What is the actor doing, and what permits or blocks movement?
- Which destination intent does the navigation owner currently hold?
- What does the arrival evaluator observe and report?
- Which transition may the navigation owner perform for that report?
834. Worked example
Consider a vehicle traveling from river_crossing to north_outpost.
A weak rule says, “When the vehicle reaches the north-outpost marker, the route is complete.” It does not define the coordinate frame, units, stopping rule, route validity, evaluator, or state authority.
The following bounded contract uses explicit design decisions. The values are examples, not universal constants:
- Navigation owner: the active vehicle navigation controller.
- Contract states:
active,blocked,cancelled,failed, andcomplete. - Map and bounds: the declared route from
river_crossingtonorth_outpostwithin its valid route region. - Coordinate decision: current vehicle position and destination position are both expressed in the same world-space frame.
- Measurement decision: straight-line distance is measured in world-space meters.
- Destination intent: travel to
north_outpostwhile the intent remains active. - Progress permission: movement is permitted only while the vehicle is operational and the route is open.
- Arrival evaluator inputs: vehicle position, destination position, vehicle speed, route validity, and operational condition.
- Arrival thresholds: distance to the destination is at or below
2 m, speed is at or below0.2 m/s, the route is open and valid, and the vehicle is operational. - Evaluator output:
arrival-criteria-metorarrival-criteria-not-metfor the current evaluation. - Success transition: when the owner receives
arrival-criteria-metfor its current active intent, it changesactivetocompleteand exposesnorth_outpostas the completed destination. - Blocked transition: if the route becomes blocked while the intent is active, the owner changes
activetoblocked; proximity does not override this result.
The distance comparison is meaningful because both positions use the same coordinate frame, metric, and units. A vehicle 1.5 m from the destination but moving at 1.0 m/s does not meet this contract’s arrival criteria. A stopped vehicle within 2 m also does not qualify if the route is blocked, invalid, or no longer belongs to the current intent.
The marker may display north_outpost, but it neither evaluates arrival nor changes the navigation state.
835. Common mistakes
836. Treating a marker as authority
A marker is spatial or presentation data. It may be hidden, decorative, stale, or associated with a cancelled intent. Its visibility or overlap does not prove arrival.
837. Comparing incompatible coordinates
A distance has no reliable contract meaning if the actor and destination positions use different frames, metrics, or units. Convert them into a declared compatible frame before applying a tolerance.
838. Letting the evaluator own transitions
An evaluator reports observations. The navigation owner decides whether the report belongs to the current intent and performs only a permitted transition. This prevents a late report for an old destination from completing a newer route.
839. Collapsing navigation into a “map system”
This hides whether a defect belongs to representation, intent, movement permission, arrival evaluation, or state transition. Keep those responsibilities named and bounded.
840. Guided practice
Draft a navigation contract for this scenario:
A vehicle must travel from
camptocheckpoint. The checkpoint appears on the map, the vehicle can become disabled, and the route can become blocked. The route completes only when the vehicle is sufficiently close to the checkpoint and has stopped.
Complete the table:
| Contract field | Your decision |
|---|---|
| Navigation owner | |
| Contract states and permitted transitions | |
| Coordinate frame, distance metric, and units | |
| Route bounds | |
| Destination representation | |
| Active destination intent | |
| Conditions permitting movement | |
| Conditions blocking movement | |
| Arrival evaluator | |
| Evaluator inputs | |
| Distance tolerance | |
| Speed or stopping threshold | |
| Evaluator report | |
| Owner response to success, blockage, and cancellation |
Then draw a four-part diagram with separate boxes for map data, movement state, destination intent, and the bounded contract. Label these flows:
- map and movement observations enter the arrival evaluator;
- the evaluator reports whether the criteria are met;
- the navigation owner checks that the report belongs to the current intent;
- the owner performs a declared transition.
Finally, decide what happens in each case and justify it using your contract:
- the vehicle enters the distance tolerance while still above the speed threshold;
- the route becomes blocked while the vehicle is near the checkpoint;
- the destination changes before a report for the old destination is accepted;
- actor and destination positions arrive in incompatible coordinate frames.
841. Validation and evidence
Your evidence consists of the completed contract table and four-part diagram. Another developer should be able to determine without guessing:
- which system owns the destination intent and contract state;
- which component observes and evaluates arrival;
- which compatible coordinate frame, metric, and units support the distance test;
- which movement and route conditions permit arrival;
- what the evaluator reports;
- which transitions the owner may perform for completion, blockage, cancellation, or failure;
- why the map marker is not authoritative world state.
842. Key takeaways
- A map represents spatial information; it does not own navigation truth.
- Destination intent states where the actor is meant to go; it does not prove arrival.
- Movement and route validity remain separate inputs.
- An arrival evaluator observes declared inputs and reports a result.
- The navigation owner holds the intent, accepts relevant reports, and performs only declared transitions.
- Distance tolerances require compatible coordinate frames, metrics, and units.
843. Next lesson
Continue to 2.12 L2 — Vehicle possession is a state handoff. The next lesson applies the same ownership discipline when input and movement authority pass between player and vehicle during entry, exit, or interruption; the map, destination marker, and vehicle presentation do not become authoritative merely because control changes.
844. Knowledge check
Answer these items for yourself before reading the answers.
Which statement best separates a map from world state?
Show answer and feedback
Answer: A map represents spatial information; world state determines what is currently permitted, blocked, or invalid.
Why: The map supplies spatial representation. Current world and movement conditions determine whether behavior is permitted, blocked, or invalid.
What is the purpose of a navigation intent?
Show answer and feedback
Answer: To express the destination or route the actor is currently meant to follow.
Why: Intent identifies the current target or route. It does not authorize movement or establish arrival by itself.
A contract requires distance at or below 2 m, speed at or below 0.2 m/s, an open valid route, and an operational vehicle. The vehicle is 1.5 m away, moving at 0.1 m/s, but the route became blocked. Which result follows?
Show answer and feedback
Answer: Arrival criteria are not met; the owner follows the declared blocked transition because route validity is required.
Why: All declared criteria must hold. Proximity and low speed do not override a blocked route, and the owner—not the evaluator or marker—performs the declared state transition.
Why must a distance-based arrival rule declare a coordinate frame, metric, and units?
Show answer and feedback
Answer: So positions are compatible and the numerical tolerance has a defined spatial meaning.
Why: A value such as 2 m is meaningful only when the compared positions use a compatible frame, distance metric, and unit convention.
Which statement correctly separates destination ownership from arrival observation and evaluation?
Show answer and feedback
Answer: The navigation owner holds the active destination intent; an evaluator observes the declared inputs and reports a result; the owner accepts a relevant report and performs a permitted transition.
Why: The owner controls the current intent and contract state. The evaluator observes position, movement, route validity, and other declared conditions, but only reports whether the criteria are met.