Background
Harvest was migrated to SDK 2.0.0 in #276 with 42 new unit tests, but no tests/test_harvest_integration.py was added.
Harvest uses platform OAuth, so e2e coverage requires a manually obtained access token. This is more friction than custom-auth integrations, but still valuable — schema-validation crashes (the kind that bit #289 google-sheets and #290 xero in production) only surface against real responses.
Acceptance criteria
Related
Background
Harvest was migrated to SDK 2.0.0 in #276 with 42 new unit tests, but no
tests/test_harvest_integration.pywas added.Harvest uses platform OAuth, so e2e coverage requires a manually obtained access token. This is more friction than custom-auth integrations, but still valuable — schema-validation crashes (the kind that bit #289 google-sheets and #290 xero in production) only surface against real responses.
Acceptance criteria
harvest/tests/test_harvest_integration.pyfollowing thewriting-integration-testsskill@pytest.mark.destructiveHARVEST_ACCESS_TOKENandHARVEST_ACCOUNT_IDfrom a sandbox account)pytest harvest/ -m integrationpasses locallyRelated