Further changes:
* remove `init` param from `get_memory()`, replace usages by `memory.clear()`
* make token length calculation optional in `MemoryItem.dump()`
* Rearrange tests into unit/integration/challenge categories
* Fix linting + `tests.challenges` imports
* Fix obscured duplicate test in test_url_validation.py
* Move VCR conftest to tests.vcr
* Specify tests to run & their order (unit -> integration -> challenges) in CI
* Fail Docker CI when tests fail
* Fix import & linting errors in tests
* Fix `get_text_summary`
* Fix linting errors
* Clean up pytest args in CI
* Remove bogus tests from GoCodeo
* gfeat: specify directory of cassettes and automatically load them depending on module
fix: formatting for linter
test: commit newly generated cassettes to their respective folder
tests: update latest fixtures with master
fix: update .gitattributes with updated path to cassettes
fix: use cassettes from master instead of generating them myself
fix: update path in .gitattributes
fix: make sure to match default functionality by using test name for cassette directory
fix: actually add git submodule
ci: checkout git submodules in CI
ci: update git submodules separately to ensure it gets called
feat: add a hooks directory so we can update git submodules on post-checkout
feat: make sure we push the tests/cassettes submodule on merge into master
ci: remove unused code now that we are using git submodules to keep cassettes in sync
fix: simplify how we load the submodule and fix updating cassettes on merge to master
chore: remove echo of checkout hook, it's unneeded
ci: remove unneccesary step
* cassettes submodule
* cassettes submodule
* cassettes submodule
* cassettes submodule
* cassettes submodule
---------
Co-authored-by: Stefan Ayala <stefanayala3266@gmail.com>
* Extract retry logic, unify embedding functions
* Add some docstrings
* Remove embedding creation from API manager
* Add test suite for retry handler
* Make api manager fixture
* Fix typing
* Streamline tests
* Add workspace abstraction
* Remove old workspace implementation
* Extract path resolution to a helper function
* Add api key requirements to new tests