Skip to content

Conversation

@frodrigo
Copy link
Member

Add the PSV vehicle subtypes to the access_tag_blacklist of the car profile (taxi, share_taxi, minibus, and bus).

Car access to highways restricted to PSV vehicles is currently blocked because psv is included in the car profile’s access_tag_blacklist.

However, psv is a generic value, and more specific PSV vehicle types can be defined. According to the OSM wiki, these include: taxi, share_taxi, minibus, and bus.

So, also blacklist this values.

Copy link
Collaborator

@DennisOSRM DennisOSRM left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR probably requires a rebase.

@frodrigo frodrigo force-pushed the psv_blacklist_sub_type branch from bf25f05 to 2673fe7 Compare January 16, 2026 18:13
@frodrigo
Copy link
Member Author

Rebased

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds support for specific PSV (Public Service Vehicle) subtypes to the car profile's access restrictions. Since the generic psv tag was already blacklisted but more specific PSV vehicle types (taxi, share_taxi, minibus, and bus) could bypass these restrictions, this change ensures consistent handling of all PSV-related access restrictions.

Changes:

  • Added taxi, share_taxi, minibus, and bus to the car profile's access_tag_blacklist
  • Extended lane counting logic to recognize PSV subtype-specific lane tags
  • Added test coverage for the new access tag restrictions

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
profiles/car.lua Added four PSV subtypes (taxi, share_taxi, minibus, bus) to the access_tag_blacklist with explanatory comments
features/car/access.feature Added test cases for the new PSV subtype access restrictions in both way and node access scenarios
taginfo.json Registered the four new PSV subtype access tag values in the tag metadata
profiles/lib/guidance.lua Extended get_psv_counts function to check for PSV subtype-specific lane tags (lanes:taxi, lanes:share_taxi, lanes:minibus, lanes:bus)
CHANGELOG.md Added entry documenting this change under the Profiles section

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +147 to +152
local taxi_forward, taxi_backward = Tags.get_forward_backward_by_key(way,data,'lanes:taxi')
local share_taxi_forward, share_taxi_backward = Tags.get_forward_backward_by_key(way,data,'lanes:share_taxi')
local minibus_forward, minibus_backward = Tags.get_forward_backward_by_key(way,data,'lanes:minibus')
local bus_forward, bus_backward = Tags.get_forward_backward_by_key(way,data,'lanes:bus')
psv_forward = psv_forward or taxi_forward or share_taxi_forward or minibus_forward or bus_forward
psv_backward = psv_backward or taxi_backward or share_taxi_backward or minibus_backward or bus_backward
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The new support for lanes:taxi, lanes:share_taxi, lanes:minibus, and lanes:bus tags lacks test coverage. Consider adding test scenarios in features/guidance/turn-lanes.feature similar to the existing lanes:psv tests to verify that these new lane types are correctly handled when lanes:psv is not present.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants