Port the SYB ERP HTTP client from the upstream cmautobuy project. The
package is stdlib-only (no DB, no gin), so client.go, columns.go, ocr.go
and their httptest suites carry over almost verbatim; only the package
name and doc references changed.
Add on top of the port:
- models.SYBSession + gorm SessionStore, so a restart does not force a
fresh captcha. Cookies are credential-equivalent and carry json:"-".
Expired sessions read as absent because SYB has no rolling renewal.
- config.Extend.SYB. Non-secret settings live in settings.yml;
username and password come only from GOAUTO_SYB_* environment
variables, so no credential lands in a tracked file.
- docs/12-syb-erp-interface.md, the ported interface contract.
The guard tests were mutation-checked: reverting json:"-" and renaming a
settings.yml key each make their test fail.
No import endpoint yet — that needs real credentials and live network
verification, which is Stage 2 of #48.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
69 lines
1.6 KiB
JSON
69 lines
1.6 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"gitea_url": "https://git.ilapage.cn",
|
|
"owner": "OPC",
|
|
"repository": "goauto",
|
|
"mappings": [
|
|
{
|
|
"page": "Home",
|
|
"path": "docs/README.md"
|
|
},
|
|
{
|
|
"page": "Project-Profile",
|
|
"path": "docs/00-project-profile.md"
|
|
},
|
|
{
|
|
"page": "Development-Workflow",
|
|
"path": "docs/01-workflow.md"
|
|
},
|
|
{
|
|
"page": "Architecture-and-Code-Map",
|
|
"path": "docs/02-architecture-and-code-map.md"
|
|
},
|
|
{
|
|
"page": "Business-Rules-and-Glossary",
|
|
"path": "docs/03-business-rules-and-glossary.md"
|
|
},
|
|
{
|
|
"page": "Local-Development-and-Verification",
|
|
"path": "docs/04-local-development-and-verification.md"
|
|
},
|
|
{
|
|
"page": "Common-Changes",
|
|
"path": "docs/05-common-changes.md"
|
|
},
|
|
{
|
|
"page": "Troubleshooting",
|
|
"path": "docs/06-troubleshooting.md"
|
|
},
|
|
{
|
|
"page": "Product-Requirements-Overview",
|
|
"path": "docs/07-mvp-requirements.md"
|
|
},
|
|
{
|
|
"page": "Android-Agent-API-Contract",
|
|
"path": "docs/08-agent-api-contract.md"
|
|
},
|
|
{
|
|
"page": "Delivery-Issues",
|
|
"path": "docs/09-delivery-issues.md"
|
|
},
|
|
{
|
|
"page": "OnePlus-Real-Device-Acceptance",
|
|
"path": "docs/10-real-device-acceptance.md"
|
|
},
|
|
{
|
|
"page": "PDD-Detail-Rule-Migration-Analysis",
|
|
"path": "docs/11-pdd-detail-rule-migration-analysis.md"
|
|
},
|
|
{
|
|
"page": "Task-Archive-Template",
|
|
"path": "docs/templates/task-archive.md"
|
|
},
|
|
{
|
|
"page": "SYB-ERP-Interface-Contract",
|
|
"path": "docs/12-syb-erp-interface.md"
|
|
}
|
|
]
|
|
}
|