Skip to content

docs: add Legend Boats catalogue scraping notes - #591

Open
harrisboatworks wants to merge 1 commit into
browser-use:mainfrom
harrisboatworks:codex/legendboats-domain-20260808
Open

docs: add Legend Boats catalogue scraping notes#591
harrisboatworks wants to merge 1 commit into
browser-use:mainfrom
harrisboatworks:codex/legendboats-domain-20260808

Conversation

@harrisboatworks

@harrisboatworks harrisboatworks commented Aug 8, 2026

Copy link
Copy Markdown

Adds a domain guide for Legend Boats current-series discovery, exact model pricing, Next.js builder fallback, and known reliability traps. The guide records the non-clearance menu-tab logic, total-package motor price interpretation, the XT/Uttern fallback path, and the unreliable boat-model sitemap.


Summary by cubic

Adds a scraping guide for legendboats.com catalog and pricing. It covers detecting active series from menu tabs, parsing exact model and motor prices (Ontario All‑In), using build.legendboats.com as a safe fallback, and avoiding unreliable discovery paths like the boat-model sitemap.

Written for commit 2653a32. Summary will update on new commits.

Review in cubic

@browser-harness-review

Copy link
Copy Markdown

✅ Skill review passed

Reviewed 1 file(s) — no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2653a3241e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@@ -0,0 +1,58 @@
# Legend Boats catalogue and pricing

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Move the Legend skill into the agent workspace

With BH_DOMAIN_SKILLS=1, the runtime lookup in src/browser_harness/helpers.py:134-135 searches only $BH_AGENT_WORKSPACE/domain-skills/<host>, so a guide added under the repository-root domain-skills/ directory is never returned when an agent visits legendboats.com. Move this file to agent-workspace/domain-skills/legendboats/catalog-pricing.md so the feature can discover and use it.

AGENTS.md reference: AGENTS.md:L26-L28

Useful? React with 👍 / 👎.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

2 issues found across 1 file

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="domain-skills/legendboats/catalog-pricing.md">

<violation number="1" location="domain-skills/legendboats/catalog-pricing.md:1">
P3: This skill was added to the repository-root `domain-skills/` folder, but every other domain-skill example (amazon, github, linkedin, etc.) lives under `agent-workspace/domain-skills/`, and README.md states contributed skills go into "the repo's `agent-workspace/domain-skills/` examples". File it under `agent-workspace/domain-skills/legendboats/` so it is discoverable alongside the other examples and picked up by the expected launcher/loader paths.</violation>

<violation number="2" location="domain-skills/legendboats/catalog-pricing.md:47">
P3: In the builder fallback instructions, "preferring an available variant" is ambiguous: the doc defines both `FeaturedInBoatBuilder` and `IsAvailableForBoatBuilder` as relevant fields but only filters on `FeaturedInBoatBuilder == true`, so it doesn't say what makes a variant "available" when deduplicating. An agent could pick a featured-but-not-available colour variant as the preferred record. Consider making the preference explicit, e.g. "preferring the variant where `IsAvailableForBoatBuilder == true".</violation>
</file>

Reply with feedback, questions, or to request a fix.

Fix all with cubic | Re-trigger cubic

- `FeaturedInBoatBuilder` and `IsAvailableForBoatBuilder`
- `StandardMotorId` and `StandardTrailerId`

Filter records to the model year shown in the active main-menu card and to `FeaturedInBoatBuilder == true`. Colour variants share a public model name; deduplicate by `(Series, PublicName, ModelYear)`, preferring an available variant. Use `RetailPrice` for the current base display. Do not interpret a zero `RetailSpecialPrice` plus a full-price `Savings` value as a free boat; those fields are not reliable enough to apply a promotion automatically.

@cubic-dev-ai cubic-dev-ai Bot Aug 8, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

P3: In the builder fallback instructions, "preferring an available variant" is ambiguous: the doc defines both FeaturedInBoatBuilder and IsAvailableForBoatBuilder as relevant fields but only filters on FeaturedInBoatBuilder == true, so it doesn't say what makes a variant "available" when deduplicating. An agent could pick a featured-but-not-available colour variant as the preferred record. Consider making the preference explicit, e.g. "preferring the variant where `IsAvailableForBoatBuilder == true".

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At domain-skills/legendboats/catalog-pricing.md, line 47:

<comment>In the builder fallback instructions, "preferring an available variant" is ambiguous: the doc defines both `FeaturedInBoatBuilder` and `IsAvailableForBoatBuilder` as relevant fields but only filters on `FeaturedInBoatBuilder == true`, so it doesn't say what makes a variant "available" when deduplicating. An agent could pick a featured-but-not-available colour variant as the preferred record. Consider making the preference explicit, e.g. "preferring the variant where `IsAvailableForBoatBuilder == true".</comment>

<file context>
@@ -0,0 +1,58 @@
+- `FeaturedInBoatBuilder` and `IsAvailableForBoatBuilder`
+- `StandardMotorId` and `StandardTrailerId`
+
+Filter records to the model year shown in the active main-menu card and to `FeaturedInBoatBuilder == true`. Colour variants share a public model name; deduplicate by `(Series, PublicName, ModelYear)`, preferring an available variant. Use `RetailPrice` for the current base display. Do not interpret a zero `RetailSpecialPrice` plus a full-price `Savings` value as a free boat; those fields are not reliable enough to apply a promotion automatically.
+
+## Reliability traps
</file context>
Suggested change
Filter records to the model year shown in the active main-menu card and to `FeaturedInBoatBuilder == true`. Colour variants share a public model name; deduplicate by `(Series, PublicName, ModelYear)`, preferring an available variant. Use `RetailPrice` for the current base display. Do not interpret a zero `RetailSpecialPrice` plus a full-price `Savings` value as a free boat; those fields are not reliable enough to apply a promotion automatically.
Colour variants share a public model name; deduplicate by `(Series, PublicName, ModelYear)`, preferring a variant where `IsAvailableForBoatBuilder == true`.
Fix with cubic

@@ -0,0 +1,58 @@
# Legend Boats catalogue and pricing

@cubic-dev-ai cubic-dev-ai Bot Aug 8, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

P3: This skill was added to the repository-root domain-skills/ folder, but every other domain-skill example (amazon, github, linkedin, etc.) lives under agent-workspace/domain-skills/, and README.md states contributed skills go into "the repo's agent-workspace/domain-skills/ examples". File it under agent-workspace/domain-skills/legendboats/ so it is discoverable alongside the other examples and picked up by the expected launcher/loader paths.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At domain-skills/legendboats/catalog-pricing.md, line 1:

<comment>This skill was added to the repository-root `domain-skills/` folder, but every other domain-skill example (amazon, github, linkedin, etc.) lives under `agent-workspace/domain-skills/`, and README.md states contributed skills go into "the repo's `agent-workspace/domain-skills/` examples". File it under `agent-workspace/domain-skills/legendboats/` so it is discoverable alongside the other examples and picked up by the expected launcher/loader paths.</comment>

<file context>
@@ -0,0 +1,58 @@
+# Legend Boats catalogue and pricing
+
+`https://www.legendboats.com/` is a WordPress catalogue with a separate Next.js builder at `https://build.legendboats.com/`. Public model years, prices, packages, and promotions are volatile; fetch them live and preserve the exact URL and retrieval time.
</file context>
Fix with cubic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant