Skip to content

OVS_HUB 1.0: OH20-1349: Add vessel to PartnerVoyage object#635

Merged
HenrikHL merged 1 commit into
masterfrom
OH20-1349_Add-vessel
Jun 11, 2026
Merged

OVS_HUB 1.0: OH20-1349: Add vessel to PartnerVoyage object#635
HenrikHL merged 1 commit into
masterfrom
OH20-1349_Add-vessel

Conversation

@HenrikHL

@HenrikHL HenrikHL commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

OH20-1349: Add Vessel info to PartnerVoyage

@qodo-code-review

Copy link
Copy Markdown

Looking for bugs?

Check back in a few minutes. An AI review agent is analyzing this pull request.

@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

Add Vessel schema and link it from PartnerVoyage (OVS_HUB_REF v1.0.0)
✨ Enhancement 📝 Documentation 🕐 10-20 Minutes

Grey Divider

Walkthroughs

Description
• Extend PartnerVoyage to include a vessel reference.
• Add a reusable Vessel schema with operator, IMO, name, and call sign fields.
• Document validation rules and examples for vessel identifiers and names.
Diagram
graph TD
  A["PartnerVoyage"] --> B["vessel"] --> C["Vessel schema"]
  A --> D["carrierVoyages"]
  E["OVS_HUB_REF v1.0.0 OpenAPI"] --> A
  E --> C
  F["API consumers"] --> E

  subgraph Legend
    direction LR
    _schema["Schema"] ~~~ _prop["Property"] ~~~ _cons["Consumer"]
  end
Loading
High-Level Assessment

The following are alternative approaches to this PR:

1. Reuse an existing/common Vessel schema
  • ➕ Avoids duplicate vessel modeling across specs/products
  • ➕ Improves consistency if other DCSA/OVS specs already define Vessel
  • ➖ May require alignment/migration work if existing schema differs (field names, constraints)
  • ➖ Could delay delivery if cross-team agreement is needed
2. Inline vessel fields directly on PartnerVoyage
  • ➕ Fewer schema indirections for simple clients
  • ➕ No need to manage a separate schema lifecycle
  • ➖ Harder to reuse the same vessel definition in other objects later
  • ➖ More painful to evolve/extend vessel fields consistently across endpoints

Recommendation: Current approach (introduce a dedicated Vessel schema and reference it from PartnerVoyage) is the best default for long-term reuse and evolution. Before merging, quickly verify there is no already-established Vessel schema in adjacent OVS/DCSA reference specs to avoid divergence; if one exists, prefer referencing/aligning to that shared definition.

Grey Divider

File Changes

Enhancement (1)
OVS_HUB_REF_v1.0.0.yaml Add Vessel schema and reference it from PartnerVoyage +45/-0

Add Vessel schema and reference it from PartnerVoyage

• Adds a new 'vessel' property to the PartnerVoyage schema referencing '#/components/schemas/Vessel'. Introduces a 'Vessel' schema describing static vessel details (operator SMDG code, IMO number, name, call sign, and dummy-vessel flag) with validation constraints and examples.

ovs_hub_ref/v1/OVS_HUB_REF_v1.0.0.yaml


Grey Divider

Qodo Logo

@HenrikHL HenrikHL merged commit 389a5ef into master Jun 11, 2026
1 check passed
@HenrikHL HenrikHL deleted the OH20-1349_Add-vessel branch June 11, 2026 07:59
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.

1 participant