Files
crop-chem-docs/corpus/bayer/roundup-powermax.json
T
justin a97107de46
Image rebuild (skip scrape) / build (push) Failing after 1h37m12s
docker: production image + Gitea Actions for monthly refresh
Dockerfile: self-contained image with corpus + Chroma + BM25 baked
in. Drawbar's compose pulls + runs without volume mounts. Built from
sources.json (labels schema), PRODUCT_NAME=crop_chem by default,
HYBRID_SEARCH=true (always-on for production quality). RERANK_URL +
OLLAMA_URL get set at compose time.

.gitea/workflows/refresh.yml: monthly cron (1st @ 06:00 UTC) does
full scrape → reindex → image push. Scrapes Bayer (~30 min) +
EPA PPLS row-crop filtered (~7h). Skips reindex+push if no corpus
diff. Tags pushed: :latest, :<sha12>, :corpus-<YYYY.MM.DD>.

.gitea/workflows/image-only.yml: on-demand or auto on code-only
pushes to main (paths: docs_mcp/, rag/, scrape/, requirements.txt,
Dockerfile, sources.json). Reindexes from committed corpus, builds
image, pushes. ~10 min vs ~9h full refresh.

.gitignore: corpus/ now COMMITTED (4,159 labels, 265 MB of .md +
sidecars). Lets image-only.yml rebuild indexes without re-scraping.
chroma/ + bm25/ still gitignored (regenerable binary indexes).

.dockerignore: drops venv, eval results, PLAN/README/CLAUDE.md,
deploy/, .git/ — keeps the image lean. corpus + chroma + bm25
explicitly NOT in dockerignore (those go INTO the image).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 12:32:41 -04:00

70 lines
2.4 KiB
JSON

{
"source": "bayer",
"source_key": "roundup-powermax",
"epa_reg_no": "524-549-ZA",
"product_name": "Roundup PowerMAX Herbicide",
"product_class": "herbicide",
"registrant": null,
"active_ingredients": [
{
"name": "Glyphosate, N-(phosphonomethyl)glycine,in the form of its potassium salt",
"cas": null,
"percent": null
}
],
"signal_word": null,
"label": {
"url": "https://cs-assets.bayer.com/is/content/bayer/Roundup_PowerMAX_Herbicide_Bayer_Label2pdf",
"filename": "Roundup_PowerMAX_Herbicide_Bayer_Label2pdf",
"accepted_date": null,
"last_modified": "2026-01-30T14:03:23+00:00",
"page_count": 25,
"text_layer": true
},
"supplemental_documents": [
{
"kind": "MSDS",
"title": "ROUNDUP POWERMAX HERBICIDE MSDS - Spanish",
"url": "https://cs-assets.bayer.com/is/content/bayer/Roundup_PowerMAX_Herbicide2j_MSDSpdf",
"last_modified": "2025-08-17T08:38:44+00:00"
},
{
"kind": "MSDS",
"title": "ROUNDUP POWERMAX HERBICIDE MSDS - English",
"url": "https://preview1.assetsadobe.com/is/content/bayer/Roundup_PowerMAX_Herbicide2h_MSDSpdf",
"last_modified": "2025-05-27T23:23:09+00:00"
},
{
"kind": "Supplemental",
"title": "USE WITH ENLIST E3 SOYBEAN (Expires 2026-03-31)",
"url": "https://cs-assets.bayer.com/is/content/bayer/Roundup_PowerMAX_Herbicide_Bayer_Supplemental_Label1uppdf",
"last_modified": "2026-01-27T08:55:13+00:00"
},
{
"kind": "Supplemental",
"title": "USE WITH GT27 SOYBEAN",
"url": "https://cs-assets.bayer.com/is/content/bayer/Roundup_PowerMAX_Herbicide_Bayer_Supplemental_Label1uepdf",
"last_modified": "2026-01-27T08:55:13+00:00"
},
{
"kind": "Supplemental",
"title": "USE WITH AGRISURE GT CORN",
"url": "https://cs-assets.bayer.com/is/content/bayer/Roundup_PowerMAX_Herbicide_Bayer_Supplemental_Label1eupdf",
"last_modified": "2026-01-27T08:55:14+00:00"
},
{
"kind": "Bulletin",
"title": "Roundup PowerMAX Product Bulletin",
"url": "https://cs-assets.bayer.com/is/content/bayer/Roundup-PowerMAX_2025pdf",
"last_modified": "2026-05-19T20:30:31+00:00"
}
],
"source_urls": {
"product_page": "https://www.cropscience.bayer.us/crop-protection/herbicide/roundup-powermax-herbicide",
"label_api": null,
"label_index": null
},
"fetched_at": "2026-05-24T00:57:19.681926+00:00",
"scraper_version": "0.1.0"
}