75f714b454
deploy/docker-compose.yml — replace <product>/<registry> placeholders with concrete values for Drawbar's stack: - image: git.jpaul.io/justin/seed-mcp:latest (CF tunnel for pulls; CI pushes via LAN 192.168.0.2:1234 to avoid 100 MB body cap) - container_name: seed-mcp - port 8001:8000 (8001 host-side to not collide with crop-chem-docs on 8000) - PRODUCT_NAME=crop_seed, hybrid search enabled, stateless HTTP - llama-rerank shared with crop-chem-docs (NOT redefined here — expected to already be in Drawbar's parent compose network) - networks.drawbar-mcp external: true so seed-mcp joins the existing cross-MCP shared network .gitignore — corpus/ is now COMMITTED, not ignored. The monthly refresh workflow scrapes and commits corpus changes; the image-only workflow rebuilds indexes from the committed corpus. Allowing the corpus to flow through git means the :corpus-YYYY.MM.DD image tag pins to a specific seed-catalog snapshot. chroma/ and bm25/ remain ignored — those are deterministically derived from corpus. Initial committed snapshot: 614 varieties. - bayer_seeds: 475 (DEKALB 288 + Asgrow 102 + WestBred 85) - golden_harvest: 139 (Syngenta corn + soy; 36 sitemap URLs 302-redirected = discontinued) rag/chunk.py — normalize brand and crop to uppercase/lowercase in Chroma metadata so cross-vendor brand-filter lookups don't break on casing inconsistency (Bayer stores "DEKALB", Golden Harvest stores "Golden Harvest"; _build_where uppercases user-supplied brand which matched the former but not the latter pre-fix). Sidecar JSON keeps original casing for display. Stub scrapers (nk, agripro, becks_pfr, becks_products) — change return code from 2 to 0 so the monthly-refresh CI workflow doesn't fail on deferred sources. Real implementations will return 0 on success / 1 on failure when they ship. Smoke-tested cross-vendor retrieval against the 614-chunk index: - list_versions shows both vendors with correct facet counts - broad "corn hybrid 100 RM" query returns both DEKALB and Golden Harvest hits in top 5 - brand='Golden Harvest' filter returns 3 GH-only varieties - variety-code prefilter still works (E085Z5 → top hit on GH) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
238 lines
6.2 KiB
JSON
238 lines
6.2 KiB
JSON
{
|
||
"source": "bayer_seeds",
|
||
"source_key": "dekalb-dkc098-86",
|
||
"vendor": "Bayer",
|
||
"brand": "DEKALB",
|
||
"product_name": "DKC098-86 BRAND",
|
||
"product_id": "CORN_DKC098-86 BRAND_DEKALB_US",
|
||
"hybrid_prefix": "DKC098-86",
|
||
"hybrid_suffix": "BRAND",
|
||
"crop": "corn",
|
||
"release_year": 2026,
|
||
"relative_maturity": "98",
|
||
"maturity_group": null,
|
||
"wheat_class": null,
|
||
"trait_stack": [
|
||
"CONV"
|
||
],
|
||
"trait_descriptions": [
|
||
"Conventional"
|
||
],
|
||
"positioning_statement": "DKC098-86 Brand has shown exceptional yield performance potential and a strong defensive agronomic package. ",
|
||
"strengths": [
|
||
"Excellent yield performance potential with broad east to west placement",
|
||
"Very good emergence and seedling vigor offer flexible planting window",
|
||
"Strong defensive agronomic package with excellent root strength, good stalk strength, and very good greensnap tolerance",
|
||
"Very strong disease tolerance package including Northern Corn Leaf Blight, Goss’s Wilt, and Anthracnose Stalk Rot",
|
||
"Medium short plant height and balanced ear placement"
|
||
],
|
||
"characteristics_groups": [
|
||
{
|
||
"label": "DISEASE RATINGS",
|
||
"type": "disease ratings",
|
||
"items": [
|
||
{
|
||
"characteristic": "GRAY LEAF SPOT",
|
||
"value": "5"
|
||
},
|
||
{
|
||
"characteristic": "COMMON RUST",
|
||
"value": "3"
|
||
},
|
||
{
|
||
"characteristic": "ANTHRACNOSE STALK ROT",
|
||
"value": "2"
|
||
},
|
||
{
|
||
"characteristic": "GOSS'S WILT",
|
||
"value": "4"
|
||
},
|
||
{
|
||
"characteristic": "EYE SPOT",
|
||
"value": "3"
|
||
},
|
||
{
|
||
"characteristic": "NORTHERN CORN LEAF BLIGHT - RACE 1",
|
||
"value": "4"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"label": "GROWTH",
|
||
"type": "growth",
|
||
"items": [
|
||
{
|
||
"characteristic": "SEEDLING GROWTH",
|
||
"value": "2"
|
||
},
|
||
{
|
||
"characteristic": "EMERGENCE",
|
||
"value": "2"
|
||
},
|
||
{
|
||
"characteristic": "ROOT STRENGTH",
|
||
"value": "2"
|
||
},
|
||
{
|
||
"characteristic": "STALK STRENGTH",
|
||
"value": "3"
|
||
},
|
||
{
|
||
"characteristic": "DROUGHT TOLERANCE",
|
||
"value": "2"
|
||
},
|
||
{
|
||
"characteristic": "GREENSNAP TOLERANCE",
|
||
"value": "3"
|
||
},
|
||
{
|
||
"characteristic": "PLANT HEIGHT",
|
||
"value": "Med Short"
|
||
},
|
||
{
|
||
"characteristic": "EAR PLACEMENT",
|
||
"value": "Medium"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"label": "MANAGEMENT",
|
||
"type": "management",
|
||
"items": [
|
||
{
|
||
"characteristic": "GDUS TO MID-POLLINATION",
|
||
"value": "1270"
|
||
},
|
||
{
|
||
"characteristic": "GDUS TO BLACK LAYER",
|
||
"value": "2465"
|
||
},
|
||
{
|
||
"characteristic": "VALUE ADDED TRAIT",
|
||
"value": "CONV"
|
||
},
|
||
{
|
||
"characteristic": "RELATIVE MATURITY",
|
||
"value": "98"
|
||
},
|
||
{
|
||
"characteristic": "PLANTING RATE",
|
||
"value": "Med High"
|
||
},
|
||
{
|
||
"characteristic": "NEW PRODUCT",
|
||
"value": "NO"
|
||
},
|
||
{
|
||
"characteristic": "VARIETY",
|
||
"value": "undefined"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"label": "HARVEST",
|
||
"type": "harvest",
|
||
"items": [
|
||
{
|
||
"characteristic": "STAYGREEN",
|
||
"value": "3"
|
||
},
|
||
{
|
||
"characteristic": "HARVEST APPEARANCE",
|
||
"value": "3"
|
||
},
|
||
{
|
||
"characteristic": "DRYDOWN",
|
||
"value": "2"
|
||
},
|
||
{
|
||
"characteristic": "TEST WEIGHT",
|
||
"value": "3"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"label": "HERBICIDE",
|
||
"type": "herbicide",
|
||
"items": [
|
||
{
|
||
"characteristic": "GROWTH REGULATORS SENSITIVITY",
|
||
"value": "-"
|
||
},
|
||
{
|
||
"characteristic": "ISOXAZOLES SENSITIVITY - PREEMERGENCE",
|
||
"value": "-"
|
||
},
|
||
{
|
||
"characteristic": "SULFONYLUREAS SENSITIVITY",
|
||
"value": "-"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"label": "PLANT DESCRIPTION",
|
||
"type": "plant description",
|
||
"items": [
|
||
{
|
||
"characteristic": "COB COLOR",
|
||
"value": "Red"
|
||
},
|
||
{
|
||
"characteristic": "KERNEL CAP COLOR",
|
||
"value": "Yellow"
|
||
},
|
||
{
|
||
"characteristic": "KERNEL ROW",
|
||
"value": "18"
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"_scale_direction": "1-9 (9 = best)",
|
||
"regional_recommendations": [
|
||
{
|
||
"product_list_name": "2026 MINNESOTA DEKALB-ASGROW SEED GUIDE",
|
||
"agronomist": "Abby Ficker",
|
||
"agronomist_email": "abby.ficker@bayer.com",
|
||
"variant_id": "CORN_DKC098-86 BRAND_DEKALB_US_2026_J1H_1"
|
||
},
|
||
{
|
||
"product_list_name": "2026 MINNESOTA DEKALB-ASGROW SEED GUIDE",
|
||
"agronomist": "Abby Ficker",
|
||
"agronomist_email": "abby.ficker@bayer.com",
|
||
"variant_id": "CORN_DKC098-86 BRAND_DEKALB_US_2026_J1D_1"
|
||
},
|
||
{
|
||
"product_list_name": "2026 Washington, Oregon, SEED GUIDE",
|
||
"agronomist": "Dave Heimkes",
|
||
"agronomist_email": "david.heimkes@bayer.com",
|
||
"variant_id": "CORN_DKC098-86 BRAND_DEKALB_US_2026_G6B_2"
|
||
},
|
||
{
|
||
"product_list_name": "2026 IDAHO, UTAH SEED GUIDE",
|
||
"agronomist": "Dave Heimkes",
|
||
"agronomist_email": "david.heimkes@bayer.com",
|
||
"variant_id": "CORN_DKC098-86 BRAND_DEKALB_US_2026_G6B_1"
|
||
},
|
||
{
|
||
"product_list_name": "2026 MINNESOTA DEKALB-ASGROW SEED GUIDE",
|
||
"agronomist": "Abby Ficker",
|
||
"agronomist_email": "abby.ficker@bayer.com",
|
||
"variant_id": "CORN_DKC098-86 BRAND_DEKALB_US_2026_J1C_1"
|
||
},
|
||
{
|
||
"product_list_name": "2026 Washington, Oregon, SEED GUIDE",
|
||
"agronomist": "Dave Heimkes",
|
||
"agronomist_email": "david.heimkes@bayer.com",
|
||
"variant_id": "CORN_DKC098-86 BRAND_DEKALB_US_2026_G6C_1"
|
||
}
|
||
],
|
||
"image_url": "https://cs-assets.bayer.com/is/image/bayer/62503_31_MY23_DK_SEED_BAG_RENDERING_FIELDCORN_A",
|
||
"source_urls": [
|
||
"https://www.cropscience.bayer.us/corn/dekalb/dekalb-dkc098-86-corn"
|
||
],
|
||
"sitemap_last_modified": "2026-05-12T14:42:00.787Z",
|
||
"fetched_at": "2026-05-25T17:01:22.118315+00:00",
|
||
"scraper_version": "0.1.0"
|
||
}
|