Skip to content

[Policy API] Add multi-modal support to Policy #614

@marie-x

Description

@marie-x

Is your feature request related to a problem? Please describe.

Policy objects are matched with vehicles by their vehicle_type, propulsion_type, vehicle_state, and optionally the event_type that put them into that state. This is sufficient with today's single MDS mode (micromobility). Other modes are on the horizon, including bus, taxi, delivery vehicles, carshare, and so on, and they will have new mode-specific states. Disambiguating based on vehicle_type will not be sufficient, because (for example) a vehicle of type car could be a taxi or it could be a carshare vehicle.

We should be able to start reasoning about how we can expand Policy to encode other transportation modes, even as those other modes are being defined.

Describe the solution you'd like

Adding a mode field at the Policy level would be required, plus some language requiring that the states used in each Rule would have to match the particular mode type.

Is this a breaking change

  • Could go either way, depending on how we treat old Policy objects

Impacted Spec

For which spec is this feature being requested?

  • policy for sure
  • agency maybe
  • provider maybe

Mode information might be fully inferred from the Provider, and in that case modification to Agency and Provider might not be necessary.

Describe alternatives you've considered

I am not yet making a specific proposal, just flagging the issue for consideration.

Additional context

None at present

Metadata

Metadata

Assignees

Labels

DeliveryDelivery mode: sidewalk, autonomous, remote, goods, food, freightFleetFleet mode: car share, short or long term rentals, city fleetsModesNew modes that MDS can support (carshare, passenger services, delivery robots, etc)PassengerPassenger mode: taxis, TNC, TNP, PTC, paratransit, AVs, robotaxis, etc.PolicySpecific to the Policy API

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions