Files
pn-new-crm/src/lib/db/seed-data/berths.json

3630 lines
90 KiB
JSON
Raw Normal View History

feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
[
{
"legacyId": 85,
"mooringNumber": "E2",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 17.52,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 5.34,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "No",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "2x Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 86,
"mooringNumber": "E3",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 17.52,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 5.34,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "No",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "2x Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 87,
"mooringNumber": "E4",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 17.52,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 5.34,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "No",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "2x Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 88,
"mooringNumber": "E5",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 17.52,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 5.34,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "No",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "2x Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 89,
"mooringNumber": "E6",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 17.52,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 5.34,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 99,
"mooringNumber": "E16",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "under_offer",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 10.92,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": null,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 100,
"mooringNumber": "E17",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "under_offer",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 10.92,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": null,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 68,
"mooringNumber": "D19",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.54,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 76,
"mooringNumber": "D27",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.54,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 11.17,
"waterDepthM": 3.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 60,
"mooringNumber": "D11",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51.5,
"widthFt": 19.62,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.98,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Quay PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Side Pier / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 30,
"mooringNumber": "B20",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 157.5,
"widthFt": 37.73,
"draftFt": 14,
"lengthM": 48.01,
"widthM": 11.5,
"draftM": 4.27,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 150,
"nominalBoatSizeM": 45.72,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 160,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 2310185,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 28,
"mooringNumber": "B18",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 157.48,
"widthFt": 36.92,
"draftFt": 14,
"lengthM": 48,
"widthM": 11.25,
"draftM": 4.27,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 150,
"nominalBoatSizeM": 45.72,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 160,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 2310185,
"bowFacing": "West",
"berthApproved": true,
"statusOverrideMode": null
},
{
"legacyId": 1,
"mooringNumber": "A1",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "under_offer",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 14.5,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Quay PT",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "Side Pier / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3528000,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": "auto"
},
{
"legacyId": 2,
"mooringNumber": "A2",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "available",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 14.5,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 3,
"mooringNumber": "A3",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "available",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 14,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.27,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 4,
"mooringNumber": "A4",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "under_offer",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 14.5,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 5,
"mooringNumber": "A5",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "available",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 14.5,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 6,
"mooringNumber": "A6",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "available",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 14.5,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 7,
"mooringNumber": "A7",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "under_offer",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 15.67,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 8,
"mooringNumber": "A8",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "under_offer",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 15.67,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 9,
"mooringNumber": "A9",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "under_offer",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 15.67,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3528000,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 10,
"mooringNumber": "A10",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "available",
"lengthFt": 206.69,
"widthFt": 46.56,
"draftFt": 15.67,
"lengthM": 63,
"widthM": 14.19,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 200,
"nominalBoatSizeM": 60.96,
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "No",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "2x Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 3920313,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 117,
"mooringNumber": "A11",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "A",
"status": "under_offer",
"lengthFt": 265,
"widthFt": 52.92,
"draftFt": 15.67,
"lengthM": 80.77,
"widthM": 16.13,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 240,
"nominalBoatSizeM": 73.15,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Quay SB",
"powerCapacity": 330,
"voltage": 480,
"mooringType": "Side Pier / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3t) to Vessel",
"price": 5488439,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 11,
"mooringNumber": "B1",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 104.33,
"widthFt": 29.52,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 9,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Quay PT, Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Side Pier / Finger",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 12,
"mooringNumber": "B2",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 13,
"mooringNumber": "B3",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 14,
"mooringNumber": "B4",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 15,
"mooringNumber": "B5",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 16,
"mooringNumber": "B6",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 17,
"mooringNumber": "B7",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 18,
"mooringNumber": "B8",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 26.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.13,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 19,
"mooringNumber": "B9",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 20,
"mooringNumber": "B10",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 157.48,
"widthFt": 37.73,
"draftFt": 14.5,
"lengthM": 48,
"widthM": 11.5,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 150,
"nominalBoatSizeM": 45.72,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Quay SB, Yes PT",
"powerCapacity": 160,
"voltage": 480,
"mooringType": "Side Pier / Finger",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 2310185,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 21,
"mooringNumber": "B11",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 124.67,
"widthFt": 3081,
"draftFt": 13,
"lengthM": 38,
"widthM": 939.09,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 120,
"nominalBoatSizeM": 36.58,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 1680315,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 22,
"mooringNumber": "B12",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "available",
"lengthFt": 157.48,
"widthFt": 36.92,
"draftFt": 14.5,
"lengthM": 48,
"widthM": 11.25,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 150,
"nominalBoatSizeM": 45.72,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 160,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 2310185,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 23,
"mooringNumber": "B13",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "available",
"lengthFt": 124.67,
"widthFt": 30.81,
"draftFt": 13,
"lengthM": 38,
"widthM": 9.39,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 120,
"nominalBoatSizeM": 36.58,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 1680135,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 24,
"mooringNumber": "B14",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 157.48,
"widthFt": 36.92,
"draftFt": 14,
"lengthM": 48,
"widthM": 11.25,
"draftM": 4.27,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 150,
"nominalBoatSizeM": 45.72,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 160,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 2310185,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 25,
"mooringNumber": "B15",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 124.67,
"widthFt": 30.81,
"draftFt": 13,
"lengthM": 38,
"widthM": 9.39,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 120,
"nominalBoatSizeM": 36.58,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 1680135,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 26,
"mooringNumber": "B16",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "under_offer",
"lengthFt": 157.48,
"widthFt": 36.92,
"draftFt": 14.5,
"lengthM": 48,
"widthM": 11.25,
"draftM": 4.42,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 150,
"nominalBoatSizeM": 45.72,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 160,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type B",
"bollardCapacity": "40 ton break load",
"access": "Car (3.5t) to Vessel",
"price": 2310185,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 27,
"mooringNumber": "B17",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 30,
"widthFt": 15.4,
"draftFt": 13,
"lengthM": 9.14,
"widthM": 4.69,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 30,
"nominalBoatSizeM": 9.14,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB, PT",
"powerCapacity": 7,
"voltage": 120,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car (3.5t) to Vessel",
"price": 168013,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 29,
"mooringNumber": "B19",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 30,
"widthFt": 15.4,
"draftFt": 13,
"lengthM": 9.14,
"widthM": 4.69,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 30,
"nominalBoatSizeM": 9.14,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB, PT",
"powerCapacity": 7,
"voltage": 120,
"mooringType": "2x Finger",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car (3.5t) to Vessel",
"price": 168013,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 31,
"mooringNumber": "B21",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 30,
"widthFt": 15.4,
"draftFt": 13,
"lengthM": 9.14,
"widthM": 4.69,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 30,
"nominalBoatSizeM": 9.14,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB, PT",
"powerCapacity": 7,
"voltage": 120,
"mooringType": "2x Finger",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car (3.5t) to Vessel",
"price": 168013,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 33,
"mooringNumber": "B23",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "B",
"status": "sold",
"lengthFt": 30,
"widthFt": 15.4,
"draftFt": 13,
"lengthM": 9.14,
"widthM": 4.69,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 30,
"nominalBoatSizeM": 9.14,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 7,
"voltage": 120,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car (3.5t) to Vessel",
"price": 168013,
"bowFacing": "East",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 35,
"mooringNumber": "C1",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Quay SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Side Pier / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 36,
"mooringNumber": "C2",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 37,
"mooringNumber": "C3",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 38,
"mooringNumber": "C4",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 39,
"mooringNumber": "C5",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 40,
"mooringNumber": "C6",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 41,
"mooringNumber": "C7",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 42,
"mooringNumber": "C8",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 43,
"mooringNumber": "C9",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 44,
"mooringNumber": "C10",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 12.8,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 45,
"mooringNumber": "C11",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 13,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 46,
"mooringNumber": "C12",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 13,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 47,
"mooringNumber": "C13",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 13,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 100,
"nominalBoatSizeM": 30.48,
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1260100,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 48,
"mooringNumber": "C14",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 104.33,
"widthFt": 27.67,
"draftFt": 13,
"lengthM": 31.8,
"widthM": 8.43,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 120,
"nominalBoatSizeM": 36.58,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1680135,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 49,
"mooringNumber": "C15",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 124.67,
"widthFt": 30.81,
"draftFt": 13,
"lengthM": 38,
"widthM": 9.39,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 120,
"nominalBoatSizeM": 36.58,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1680135,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 118,
"mooringNumber": "C16",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 124.67,
"widthFt": 30.81,
"draftFt": 13,
"lengthM": 38,
"widthM": 9.39,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 120,
"nominalBoatSizeM": 36.58,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 83,
"voltage": 480,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": "Bull bollard type A",
"bollardCapacity": "20 ton break load",
"access": "Car to Quai, Cart to Vessel",
"price": 1680135,
"bowFacing": "West",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 119,
"mooringNumber": "C17",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 22.54,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.87,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Quay PT, Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Side Pier / Finger",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 120,
"mooringNumber": "C18",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 121,
"mooringNumber": "C19",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 122,
"mooringNumber": "C20",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 123,
"mooringNumber": "C21",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 124,
"mooringNumber": "C22",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 125,
"mooringNumber": "C23",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 126,
"mooringNumber": "C24",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 127,
"mooringNumber": "C25",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 128,
"mooringNumber": "C26",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 129,
"mooringNumber": "C27",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 130,
"mooringNumber": "C28",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "C",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 22.54,
"draftFt": 13,
"lengthM": 20.5,
"widthM": 6.87,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 50,
"mooringNumber": "D1",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 22.54,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.87,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Quay SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Side Pier / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 51,
"mooringNumber": "D2",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 22.54,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.87,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 52,
"mooringNumber": "D3",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 53,
"mooringNumber": "D4",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.9,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.32,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 54,
"mooringNumber": "D5",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.9,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.32,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 55,
"mooringNumber": "D6",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 56,
"mooringNumber": "D7",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.9,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.32,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 57,
"mooringNumber": "D8",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 58,
"mooringNumber": "D9",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.9,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.32,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 59,
"mooringNumber": "D10",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 61,
"mooringNumber": "D12",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 62,
"mooringNumber": "D13",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 51.5,
"widthFt": 19.62,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.98,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "No",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "2x Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 63,
"mooringNumber": "D14",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.9,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.32,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 64,
"mooringNumber": "D15",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 51,
"widthFt": 19.62,
"draftFt": 8.56,
"lengthM": 15.54,
"widthM": 5.98,
"draftM": 2.61,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "No",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "2x Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 65,
"mooringNumber": "D16",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 66,
"mooringNumber": "D17",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 51.5,
"widthFt": 19.62,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.98,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 67,
"mooringNumber": "D18",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 69,
"mooringNumber": "D20",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.9,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.32,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 70,
"mooringNumber": "D21",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 71,
"mooringNumber": "D22",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 10.92,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 72,
"mooringNumber": "D23",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 73,
"mooringNumber": "D24",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 13,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 14.42,
"waterDepthM": 4.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 74,
"mooringNumber": "D25",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 75,
"mooringNumber": "D26",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 13,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 3.96,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 77,
"mooringNumber": "D28",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 15.67,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 78,
"mooringNumber": "D29",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 11.17,
"waterDepthM": 3.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 79,
"mooringNumber": "D30",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 15.67,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 80,
"mooringNumber": "D31",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "sold",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 81,
"mooringNumber": "D32",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 15.67,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 17.32,
"waterDepthM": 5.28,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 82,
"mooringNumber": "D33",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 12.17,
"waterDepthM": 3.71,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 83,
"mooringNumber": "D34",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 67.25,
"widthFt": 20.88,
"draftFt": 15.67,
"lengthM": 20.5,
"widthM": 6.36,
"draftM": 4.78,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 65,
"nominalBoatSizeM": 19.81,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A5",
"cleatCapacity": "20-24 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 132,
"mooringNumber": "D35",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "available",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 10.08,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 3.07,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 133,
"mooringNumber": "D37",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 10.92,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 134,
"mooringNumber": "D39",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "under_offer",
"lengthFt": 51.5,
"widthFt": 17.7,
"draftFt": 10.92,
"lengthM": 15.7,
"widthM": 5.39,
"draftM": 3.33,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 16.08,
"waterDepthM": 4.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 135,
"mooringNumber": "D41",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "D",
"status": "sold",
"lengthFt": 51.5,
"widthFt": 17.96,
"draftFt": 8.58,
"lengthM": 15.7,
"widthM": 5.47,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 50,
"nominalBoatSizeM": 15.24,
"waterDepth": 17.42,
"waterDepthM": 5.31,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB, PT",
"powerCapacity": 12,
"voltage": 250,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Cart to Vessel",
"price": 728058,
"bowFacing": "South",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 84,
"mooringNumber": "E1",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "sold",
"lengthFt": 42,
"widthFt": 17.52,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 5.34,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "No",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "2x Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 90,
"mooringNumber": "E7",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 91,
"mooringNumber": "E8",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 92,
"mooringNumber": "E9",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 93,
"mooringNumber": "E10",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 94,
"mooringNumber": "E11",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 95,
"mooringNumber": "E12",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes PT",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 96,
"mooringNumber": "E13",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 97,
"mooringNumber": "E14",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 8.58,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 2.62,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 9.5,
"waterDepthM": 2.9,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 98,
"mooringNumber": "E15",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15.88,
"draftFt": 10.08,
"lengthM": 12.8,
"widthM": 4.84,
"draftM": 3.07,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": true,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 11.17,
"waterDepthM": 3.4,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": true,
"sidePontoon": "Yes SB",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": 280022,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
},
{
"legacyId": 137,
"mooringNumber": "E18",
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"area": "E",
"status": "available",
"lengthFt": 42,
"widthFt": 15,
"draftFt": 12.08,
"lengthM": 12.8,
"widthM": 4.57,
"draftM": 3.68,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"widthIsMinimum": false,
"nominalBoatSize": 40,
"nominalBoatSizeM": 12.19,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepth": 13.42,
"waterDepthM": 4.09,
feat(seed): replace 12 hand-rolled berths with 117-row NocoDB snapshot The old seed only had 12 berths with made-up area names ("North Pier", "Central Basin", etc.) and placeholder dimensions. Devs now get the real 117 berths exported from the legacy NocoDB Berths table — every editable column populated with real production values. What's in the snapshot (src/lib/db/seed-data/berths.json): - 117 berths total (61 available / 45 under_offer / 11 sold) - Areas A through E (matches NocoDB single-select) - All numeric fields filled: length / width / draft (ft + m), water depth, nominal boat size, power capacity (kW), voltage (V) - All NocoDB single-selects filled where present: side pontoon, mooring type, cleat/bollard type+capacity, access - Bow facing, status_override_mode, berth_approved carried forward as-is - Status normalized to lowercase snake_case ("Under Offer" -> "under_offer") - Mooring numbers reformatted A1 -> A-01 to keep the existing "Letter-NN" convention used elsewhere in the codebase Pre-sorted to preserve seed semantics: idx 0..4 -> 5 available (small) -- "open" / "details_sent" interests idx 5..9 -> 5 under_offer (medium) -- "eoi_signed" / "deposit" / "contract" idx 10..11 -> 2 sold (large) -- "completed" interests This means existing interest/reservation seeds that index berthRows[0..11] keep their semantic alignment without code changes. End-to-end verified by clearing Marina Azzurra and re-seeding: Port "Marina Azzurra" -- 117 berths, 8 clients, 3 companies, 12 yachts, 15 interests, 8 reservations Future devs running `pnpm db:seed` on a fresh DB will now get realistic berth data automatically. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:41:12 +02:00
"waterDepthIsMinimum": false,
"sidePontoon": "Yes PT",
"powerCapacity": 4,
"voltage": 125,
"mooringType": "Finger / Med Mooring",
"cleatType": "A3",
"cleatCapacity": "10-14 ton break load",
"bollardType": null,
"bollardCapacity": null,
"access": "Car to Quai, Cart to Vessel",
"price": null,
"bowFacing": "North",
"berthApproved": false,
"statusOverrideMode": null
}
]