Uh oh!
There was an error while loading. Please reload this page.
ci: GitHub Actions CI/CD (lint, types, tests, multimodal + token/usage, secret scan) - #17
Conversation
Khurdhula-Harshavardhan
left a comment
There was a problem hiding this comment.
please help resolve the following.
…e, secret scan) + PyPI publish
3167a71 to
d9ad590Compare
Khurdhula-Harshavardhan
left a comment
There was a problem hiding this comment.
please help resolve the following.
Uh oh!
There was an error while loading. Please reload this page.
…efore first PyPI release (review #17)
Abhinavexist
commented
Jul 21, 2026
Bumped |
…port is exercised (review #17)
Abhinavexist
commented
Jul 21, 2026
Update: added a core-only py3.9 leg in 0b53faa, so Locally exercised 3.9 first across the risky surfaces before wiring it up:
|
Uh oh!
There was an error while loading. Please reload this page.
Adds CI/CD for the SDK.
ci.yml— runs on push tomainand every PRruff check(src/tests/scripts)mypy --strictpytestacross a Python 3.9–3.13 matrixgitleaksover the working tree (fails on any leaked key/token; verified clean locally)qa-live.yml— end-to-end against the real Interfaze APIGated:
workflow_dispatch+ weekly schedule, using theINTERFAZE_API_KEYrepo secret (never on PRs — secrets aren't available to forks and it hits the live API). Runsscripts/qa_live.py, which covers text, structured output,json_objectfence, tools, streaming/reasoning, precontext, guardrails, every task, the full multimodal input matrix (image / pdf / audio / video, URL and base64), and now token/usage.Coverage this PR adds (so CI genuinely exercises the asks)
videoand base64-imageinput builders (image/file/audio already covered); the live matrix covers real image/pdf/audio/video URL+base64.usage(prompt_tokens/completion_tokens/total_tokens) is surfaced, plus a livetoken usageassertion inqa_live.py. And gitleaks guards against leaked auth tokens.Unit suite: 27 passing;
ruff+mypy --strictclean.Notes / follow-ups
ruff format --checkis intentionally not gated yet —mainhas pre-existing format drift (6 files); the in-flight fix PRs (fix: tolerate raw tool-call entries in precontext (#1) #7–feat: ChatInterfaze — in-repo LangChain chat model (#5) #12, fix: OpenAI 1:1 spec-compat reconciliation (interfaze#218) #16) carryruff formaton the files they touch, somainnormalizes as those land. Addruff format --checktoci.ymlonce it's clean.requires-pythonsays>=3.8(EOL) and thelangchainextra needs 3.10+ (its marker skips it on 3.9). Worth bumping the floor to>=3.9.qa-liveneeds theINTERFAZE_API_KEYsecret set on the repo.astral-sh/setup-uv@v6; pinsgitleaksv8.21.2.