O que a rede encontrou
Cada linha abaixo é uma medição, não uma opinião. Todas apontam para uma amostra publicada cujo contract é executado em um contêiner fixado e sem rede, então você pode reexecutá-lo e discordar do resultado.
O sistema e o runtime vêm do ambiente registrado pela amostra; dimensões ausentes são excluídas ao filtrar.
597 achados em 8 ecossistemas.
- cargo
- composer
- gem
- golang
- hex
- npm
- pub
- pypi
O que a amostra afirma e o contrato dela mede
176–200 de 568, medidos por amostras publicadas.
-
gemContrato da amostraruby · linux/x64mustermann@4.0.0
Acredita-seMustermann pattern matching always requires full string matches, and string interpolation of pattern objects safely preserves named parameter boundaries without altering AST capture names.
MedidoMustermann patterns anchored to string boundaries return nil on subpaths when using match or params, but peek_params performs unanchored prefix matching and returns both extracted params and the consumed character offset for stepwise sub-routing.
-
golangContrato da amostrago · linux/x64github.com/go-chi/chi/v5@v5.3.1
Acredita-semiddleware.Timeout enforces a hard wall-clock timeout by asynchronously aborting the handler and returning 504 Gateway Timeout even if the handler blocks or writes data.
MedidoWhen a handler cooperatively returns upon ctx.Done() without writing to ResponseWriter, middleware.Timeout writes HTTP 504 StatusGatewayTimeout with an empty body.
-
gemContrato da amostraruby · linux/x64set@1.1.3
Acredita-seSet#<=> provides a total ordering across any sets so arrays of sets can be sorted with Array#sort.
MedidoSet#<=> returns nil when neither set is a subset of the other, which causes Array#sort on incomparable sets to raise ArgumentError.
-
pypiContrato da amostrapython · linux/x64six@1.17.0
Acredita-sesix.b encodes any text to bytes and accepts existing bytes idempotently, six.u coerces bytes to str, and six.byte2int coerces integer inputs while defaulting empty bytes to zero
Medidosix.b strictly encodes strings using latin-1 raising UnicodeEncodeError on code points above 255 and AttributeError on existing bytes rather than coercing via UTF-8 or acting idempotently
-
pypiContrato da amostrapython · linux/x64six@1.17.0
Acredita-seAccessing moved attributes on six.moves or its classes returns the descriptor or resolved object identically without mutating class state, and six.remove_move cleans up import hooks alongside attribute access
MedidoAccessing an attribute on six.moves or its lazy namespaces resolves the target, caches it in the instance dictionary, and deletes the lazy descriptor from the class dictionary, making class-level attribute access fail with AttributeError
-
golangContrato da amostrago · linux/x64go.opentelemetry.io/otel/sdk@v1.45.0
Acredita-seresource.Merge returns a nil Resource pointer when encountering an ErrSchemaURLConflict between resources with different schema URLs.
Medidoresource.Merge with conflicting non-empty schema URLs returns a non-nil Resource with SchemaURL set to empty string alongside ErrSchemaURLConflict while merging attributes
-
golangContrato da amostrago · linux/x64go.opentelemetry.io/otel@v1.28.0
Acredita-seExtracting from a request with multiple traceparent headers ignores them completely as mandated by the W3C Trace Context specification.
MedidoExtracting from a HeaderCarrier with two traceparent headers yields the SpanContext of the first header rather than an invalid, empty context.
-
pypiContrato da amostrapython · linux/x64six@1.17.0
Acredita-sesix.reraise(tp, value, tb) accepts a string message as value and instantiates tp(value) like Python 2's raise statement, and six.raise_from(exc, None) retains implicit exception context.
Medidosix.reraise requires value to be an exception instance or None and raises AttributeError when passed a string message, unlike Python 2 raise syntax
-
pypiContrato da amostrapython · linux/x64six@1.17.0
Acredita-sesix.int2byte raises standard built-in ValueError or TypeError for invalid integer inputs like Python 2 chr() or Python 3 bytes constructor, and six.remove_move raises KeyError for nonexistent moves
Medidosix.int2byte raises struct.error rather than built-in ValueError or TypeError when passed out-of-range integers or non-integer types because it is implemented via struct.Struct.pack in Python 3
-
pypiContrato da amostrapython · linux/x64pydantic@2.13.4
Acredita-sePydantic models validate and coerce all field defaults against annotated types and constraints during default instantiation.
MedidoLeaving validate_default unset defaults to False: uncoerced string defaults remain raw strings and constraint-violating defaults are assigned directly without validation errors.
-
pypiContrato da amostrapython · linux/x64pydantic@2.13.4
Acredita-seSerializing a Pydantic model to JSON and parsing it back with model_validate_json preserves the original plaintext secret or raises a validation error.
Medidomodel_dump_json masks SecretStr and SecretBytes to asterisks, and subsequent model_validate_json silently parses the mask string as the new secret value instead of preserving the secret or raising an error.
-
golangContrato da amostrago · linux/x64go.opentelemetry.io/otel/sdk@v1.45.0
Acredita-seCapacity limits on a span apply a uniform dropping strategy, meaning both attributes and events would drop the newest entries or both would drop the oldest entries.
MedidoWhen AttributeCountLimit is 3 and five attributes are added in order a0…a4, span.Attributes() contains exactly the first three (a0, a1, a2), not the last three — new arrivals are silently dropped, not old ones.
-
pypiContrato da amostrapython · linux/x64pydantic@2.13.4
Acredita-sePassing a set of field names like {'members': {'secret'}} to model_dump(exclude=...) excludes that field from each nested model in a sequence.
MedidoPassing a bare field set like {'members': {'secret'}} to model_dump(exclude=...) silently leaves secrets present in nested sequence elements because collection keys represent item indices rather than attribute names.
-
pubContrato da amostradart · linux/x64args@2.7.0
Acredita-seArgResults returns an isolated or unmodifiable list for multi-option default values on each parse rather than sharing a mutable reference to the parser's internal default list.
MedidoArgResults.multiOption returns the exact mutable defaultsTo list instance stored in Option without copying, causing identical() to return true across distinct parse calls and leaking in-place mutations into subsequent parses.
-
npmContrato da amostranode · linux/x64react@18.3.1
Acredita-sestartTransition defers callback execution asynchronously or returns a Promise that keeps async continuations within the transition context.
MedidostartTransition executes its callback synchronously on the calling thread, returns undefined rather than a Promise, and resets ReactCurrentBatchConfig.transition to null immediately before returning so asynchronous continuations run outside the transition context.
-
golangContrato da amostrago · linux/x64go.opentelemetry.io/otel/sdk@v1.24.0
Acredita-seParentBased(NeverSample()) disables span sampling across all spans created by the TracerProvider
MedidoParentBased(NeverSample()) samples and exports child spans when the context contains a sampled remote parent, because ParentBased delegates sampled remote parents to AlwaysSample() by default rather than the configured root sampler.
-
golangContrato da amostrago · linux/x64go.opentelemetry.io/otel/sdk@v1.37.0
Acredita-seAlwaysSample().Description() returns "AlwaysSample" and NeverSample().Description() returns "NeverSample" matching their Go constructor identifiers
MedidoAlwaysSample().Description() returns "AlwaysOnSampler" and NeverSample().Description() returns "AlwaysOffSampler" using OpenTelemetry specification names rather than Go constructor names
-
pypiContrato da amostrapython · linux/x64httpx@0.28.1
Acredita-seSubclassing Auth to inspect streaming request bodies or handle 401 challenge retries can be done by accessing request.content directly or yielding requests without explicit body buffering flags, and Authorization headers are automatically retained across all followed redirects.
MedidoAccessing request.content on streaming requests inside auth_flow raises RequestNotRead unless requires_request_body is set to True
-
pypiContrato da amostrapython · linux/x64httpx@0.28.1
Acredita-seConverting Headers and QueryParams to standard Python dictionaries preserves all multi-value items or maps duplicate keys to lists.
MedidoConverting Headers to a standard dictionary collapses duplicate header keys into a single comma-delimited string rather than preserving discrete wire occurrences or lists.
-
pypiContrato da amostrapython · linux/x64httpx@0.28.1
Acredita-seJoining a relative path to an httpx.URL always appends to the full path prefix of the base URL
Medidohttpx.URL.join on a base path lacking a trailing slash replaces the final path segment rather than appending to it
-
npmContrato da amostranode · linux/x64@babel/preset-env@7.26.0
Acredita-seisPluginRequired accepts shorthand target versions such as chrome '80' matching Babel configuration presets, and returns false when targets is empty since no target platforms require compilation.
MedidoisPluginRequired throws a semver validation error when targets specifies a non-triplet version like '80' while support data allows '79', returns false when target version 80.0.0 meets support version 79, and returns true when targets is empty or includes unspecified environments.
-
pypiContrato da amostrapython · linux/x64httpx@0.28.1
Acredita-sehttpx.InvalidURL inherits from httpx.HTTPError and catching httpx.HTTPError catches URL formatting errors
Medidohttpx.InvalidURL inherits directly from builtins.Exception rather than httpx.HTTPError or httpx.RequestError, so catching httpx.HTTPError fails to catch URL validation failures.
-
npmContrato da amostranode · linux/x64express@4.21.0
Acredita-seres.format requires handlers to set their own Content-Type header and falls back to a 200 response or uncaught exception when the Accept header is unmatched
Medidores.format automatically sets the Vary: Accept header and pre-populates Content-Type matching the negotiated format before executing the handler
-
npmContrato da amostranode · linux/x64express@4.21.2
Acredita-serouter.param callbacks defined on a child router with mergeParams: true execute for all named parameters present in req.params during route handling.
MedidoExpress router.param callbacks only execute when the parameter placeholder is declared in the matching route's own path pattern, ignoring inherited parameters populated on req.params by mergeParams: true.
-
npmContrato da amostranode · linux/x64express@5.2.1
Acredita-seA good model would confidently expect that query parameters configured or named to represent collections will always parse as an array if present, or that ?id[]=1 syntax forces an array type.
Medidoreq.query.id parses ?id=1 as the string '1', not an array.
Como conferir qualquer linha daqui
Abra a amostra, leia o contract dela e execute. O contract é o teste da própria amostra: roda sem rede em um contêiner fixado, e o recibo assinado dessa execução é o que a rede guarda. Nada aqui depende de como lemos uma biblioteca, apenas do que ela fez.
Algumas amostras publicadas não estão nesta página. O contrato delas passou e a amostra está no ar, mas nenhuma linha desse contrato se lê como uma frase. Uma asserção como expect(x).toBe(1), ao lado da crença que verifica, não diz nada a quem lê. Preferimos deixá-las de fora a publicar evidência que ninguém consegue ler.