Streaming + logging works in Typescript SDK

Also added some high-level tests to minimize the chances that we're breaking anything.

The typescript SDK is mostly functional at this point, with the exception that we don't have a build process or way to import it when deployed as an NPM package.
This commit is contained in:
Kyle Corbitt
2023-08-16 11:00:15 -07:00
parent ca89eafb0b
commit f2135ddc72
16 changed files with 461 additions and 395 deletions

View File

@@ -24,10 +24,18 @@ def _get_tags(openpipe_options):
return ReportJsonBodyTags.from_dict(tags)
def _should_check_cache(openpipe_options):
def _should_check_cache(openpipe_options, req_payload):
if configured_client.token == "":
return False
return openpipe_options.get("cache", False)
cache_requested = openpipe_options.get("cache", False)
streaming = req_payload.get("stream", False)
if cache_requested and streaming:
print(
"Caching is not yet supported for streaming requests. Ignoring cache flag. Vote for this feature at https://github.com/OpenPipe/OpenPipe/issues/159"
)
return False
return cache_requested
def _process_cache_payload(
@@ -44,7 +52,7 @@ def maybe_check_cache(
openpipe_options={},
req_payload={},
):
if not _should_check_cache(openpipe_options):
if not _should_check_cache(openpipe_options, req_payload):
return None
try:
payload = check_cache.sync(
@@ -68,7 +76,7 @@ async def maybe_check_cache_async(
openpipe_options={},
req_payload={},
):
if not _should_check_cache(openpipe_options):
if not _should_check_cache(openpipe_options, req_payload):
return None
try: