Evidence checks for CometAPI model changes
Last reviewed: 2026-05-09
Who this is for: platform engineers, SREs, and application owners who need to decide whether a CometAPI model-change notice is enough evidence to begin validation, update an allowlist, or open a production rollout ticket.
CometAPI’s public New Model page is useful evidence that an operator should check when a model appears to have been added or changed. It should not be treated as the full production contract by itself. For reliability work, the safer pattern is: capture the evidence, map it to your local contract, validate the live API behavior, and only then change routing, fallback, or billing assumptions.
For related reliability material, see the site index at /sites/llm-api-reliability/ and the article archive at /sites/llm-api-reliability/posts/.
Key takeaways
- Treat a model-change page as a change signal, not as proof of endpoint paths, authentication headers, pricing, rate limits, or response shape.
- Preserve evidence before changing production configuration: source URL, access date, model identifier as observed, screenshot or exported text, and the validation ticket.
- Validate the exact model identifier through your real client path before adding it to an allowlist or fallback chain.
- Make parser compatibility part of the rollout. A successful HTTP response is not enough if your application cannot consume the response fields.
- Keep rollback boring: retain the previous model route, previous allowlist, and previous alert thresholds until the new model has passed canary traffic.
- Because the only supplied evidence URL is the CometAPI New Model page, this draft avoids claims about current pricing, exact endpoint contracts, benchmark performance, or guaranteed availability.
Concise definition
Model-change evidence is the set of artifacts that show why an operator believes a model was added, renamed, changed, or retired, plus the validation results proving that the model works with the application’s actual endpoint, authentication, request schema, response parser, budget controls, and fallback policy.
A release-note style page, such as CometAPI’s New Model page, can be one artifact in that evidence set. It is not enough by itself for a production change.
Operator workflow
1. Capture the evidence before editing config
Create a short change record with:
- Source URL:
https://apidoc.cometapi.com/newmodel - Access date:
2026-05-09 - Observed model name or model identifier
- Screenshot or saved page text
- Person or automation that discovered the change
- Intended use: evaluation only, canary, fallback candidate, or production primary
- Link to the validation run and rollback ticket
If your team keeps reliability notes in a shared runbook, link the ticket from your internal version of /sites/llm-api-reliability/editorial/ or your equivalent editorial/change-control page.
2. Separate “listed” from “usable”
A model can be visible in a change notice but still fail your production path because of a contract mismatch. Common causes include:
- The model identifier in the notice does not match the identifier accepted by your configured API path.
- The model does not support a request field your client always sends.
- Your response parser assumes a field that is missing, renamed, or shaped differently.
- Your fallback router treats an unknown model as healthy after a shallow status check.
- Your budget system has no billing label for the new model, so costs are misclassified or blocked.
3. Validate through the real path
Run validation through the same base URL, headers, proxy, and client library used by production. Do not validate with a separate manual client unless the result is clearly marked as “manual only.”
Example sanitized canary request, assuming your approved CometAPI contract supports an OpenAI-style chat completions path. Replace the endpoint only with the path documented for your account:
curl -sS "${COMETAPI_BASE_URL}/v1/chat/completions" \
-H "Authorization: Bearer ${COMETAPI_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"model": "<model-id-from-change-ticket>",
"messages": [
{
"role": "user",
"content": "Return exactly: ok"
}
],
"temperature": 0,
"max_tokens": 8
}'
Record:
- HTTP status
- Provider request ID, if returned
- Latency
- Response body shape
- Token usage fields, if returned
- Error body for invalid model tests
- Whether the result passed your application parser
The example above is intentionally minimal. The max_tokens value is an example to tune, not a universal threshold.
Failure-mode checklist
| Failure mode | What breaks | Evidence to collect | Practical validation step |
|---|---|---|---|
| Release-note over-read | A team treats the New Model page as proof of endpoint, auth, quota, and billing details. | Saved copy of the CometAPI New Model page, plus a note on what it does and does not prove. | Add a change-ticket section called “Not proven by release evidence” and require separate checks for endpoint, auth, response shape, pricing, and limits. |
| Model ID mismatch | Config uses a display name, alias, or typo that the API path does not accept. | Observed model identifier, configured model value, and API error response for a deliberate bad ID. | Send one valid-model request and one intentionally invalid-model request; confirm your router distinguishes the two. |
| Endpoint assumption | A new model is tested against the wrong path or a non-production proxy. | Base URL, endpoint path, environment, proxy version, and client library version. | Validate through the same network path used by production canary traffic. |
| Request-field incompatibility | The client always sends fields the model path does not accept. | Full sanitized request JSON and returned error body. | Test your normal request template, not only a minimal prompt. Then remove optional fields one at a time to isolate incompatibility. |
| Response parser break | The API call succeeds but the app cannot parse the response. | Raw sanitized response, parser logs, and schema validation result. | Run the response through the application parser and contract tests before enabling user traffic. |
| Fallback false positive | The fallback chain marks the model healthy after a shallow ping, then fails on real workloads. | Health-check request, representative workload request, and fallback decision logs. | Require both a minimal liveness check and a representative request before marking the route healthy. |
| Budget or billing misclassification | Usage is routed but cannot be attributed to the right budget bucket. | Billing label mapping, usage fields observed in response, and internal budget rule. | Keep the model in evaluation mode until finance or platform ownership confirms the internal label. |
| Rate-limit surprise | A canary or fallback burst hits limits that were not tested. | Rate-limit headers or error bodies, if returned; retry behavior; client backoff settings. | Run a small staged canary and verify backoff behavior. Treat thresholds as local tuning values unless your contract states otherwise. |
| Rollback drift | Previous model config is overwritten or deleted during rollout. | Previous route config, previous allowlist, and last known good validation result. | Store rollback config in the ticket and test one rollback request before widening traffic. |
| Observability gap | Operators cannot tell whether failures come from the new model, proxy, auth, parser, or budget controls. | Logs tagged with model, endpoint, route, request ID, status code, and parser outcome. | Add model-specific dashboard slices before rollout, not after the first incident. |
Contract details to verify
The table below is deliberately conservative. The supplied evidence source supports model-change awareness, but it does not by itself prove every runtime contract your application depends on.
| Contract area | What to verify before production use | What the supplied source supports |
|---|---|---|
| Endpoint paths | Exact path used for chat, responses, embeddings, or other calls; production base URL; proxy route; versioned path. | The CometAPI New Model page supports checking public model-change evidence. It should not be used alone as proof of endpoint paths. |
| Auth headers | Header name, token scheme, account/project headers, key scope, and whether staging and production keys differ. | Not established by the supplied source. Verify against your account documentation, approved API contract, or existing production client configuration. |
| Request fields | Required model value, supported message format, optional parameters, JSON mode or tool fields if used, token controls, and streaming setting. | The supplied source may help identify a model to investigate, but request-field compatibility must be verified by live contract tests. |
| Response fields | Presence and shape of message content, finish reason, usage fields, tool-call fields, request IDs, and streaming chunks if applicable. | Not established by the supplied source. Validate with sanitized live responses and parser tests. |
| Error behavior | Status codes and error bodies for invalid model, unsupported parameter, auth failure, quota/rate limit, timeout, and upstream failure. | Not established by the supplied source. Capture real error responses from controlled negative tests. |
| Rate-limit assumptions | Per-key, per-model, per-route, or per-account limits; retry-after behavior; backoff policy. | Not established by the supplied source. Do not infer limits from a new-model notice. |
| Billing assumptions | Price class, usage unit, invoice label, budget bucket, and whether evaluation traffic is charged differently. | Not established by the supplied source. Avoid current pricing claims unless you have a pricing or account source. |
| Availability assumptions | Whether the model can be used in your region, account, tier, or production environment. | A public new-model notice can justify investigation, but account-level availability must be tested and confirmed. |
Practical validation steps
- Open a model-change ticket. Include the source URL, access date, observed model identifier, and reason for evaluating the model.
- Compare with your allowlist. Check whether the identifier is new, renamed, or already present under another alias.
- Run a minimal request. Confirm the model can return a simple deterministic response through your real path.
- Run a normal request. Use the same request template your application sends in production, with sensitive content removed.
- Run a negative test. Send an intentionally invalid model ID and verify that your router does not classify the result as a transient provider failure.
- Check parser compatibility. Feed the response into your production parser or schema validator.
- Check observability. Confirm logs and metrics include model ID, route, status, latency, and parser outcome.
- Check fallback behavior. Force the new model to fail in a controlled environment and verify that the next route is selected as expected.
- Check budget labeling. Confirm that internal usage attribution has a bucket for the model before enabling broad traffic.
- Canary slowly. Start with internal or low-risk traffic. Treat percentages, latency thresholds, and error thresholds as local tuning values unless your contract states exact numbers.
- Document rollback. Keep the previous route and allowlist intact until the new route has passed the agreed observation window.
Suggested evidence record
Use a compact record so the next on-call engineer can reconstruct the decision:
| Field | Example value |
|---|---|
| Evidence source | https://apidoc.cometapi.com/newmodel |
| Access date | 2026-05-09 |
| Observed model identifier | <model-id> |
| Validation environment | staging or production-canary |
| Endpoint verified | <approved-endpoint-path> |
| Request template | normal-chat-template-vX |
| Parser test | pass / fail |
| Fallback test | pass / fail |
| Budget label confirmed | yes / no |
| Rollback config saved | yes / no |
| Approval owner | <team-or-person> |
Sources checked
| Source | Access date | Purpose |
|---|---|---|
| CometAPI New Model page | 2026-05-09 | Used as the supplied public evidence source for model-change awareness. Not used as proof of endpoint paths, authentication headers, rate limits, billing, pricing, or guaranteed production availability. |
FAQ
Is the CometAPI New Model page enough to ship a new model to production?
No. It is useful evidence that a model change may exist, but production use still requires endpoint, auth, request, response, error, fallback, observability, and budget validation.
Should we automatically add every newly listed model to the allowlist?
Usually no. Automatic allowlist updates can turn a documentation change into a production routing change without parser, budget, or rollback checks. A safer pattern is to create an evaluation ticket, validate the model, then approve a scoped rollout.
What if the model appears in release evidence but the API rejects it?
Treat that as a mismatch to investigate, not as an application incident by default. Capture the request, response, endpoint, account, and timestamp. Then confirm whether the issue is identifier mismatch, account availability, endpoint selection, or unsupported parameters.
What if the API works but our parser fails?
Block production rollout until the parser is updated or the route is isolated. A successful HTTP response is not sufficient if downstream code cannot safely consume the response.
Can this checklist confirm pricing or rate limits?
No. The supplied evidence URL does not establish pricing or rate-limit terms. Verify those details through your account contract, billing source, console, or other authoritative documentation before changing budgets or traffic volumes.
How should fallback routing change after a new model is validated?
Add the model only in the position justified by testing. For example, a model that passes basic canary tests may be eligible for evaluation traffic but not yet for primary production or emergency fallback. Keep previous fallback routes available until the new route has enough operational history.