Summary
- Em
draft-wei-capability-language-core-00,allow_unresolvedé um resultado próprio: a obrigação foi reconhecida, mas a evidência ou o avaliador disponível não conseguiu encerrá-la. - O consumidor deve manter o conjunto normalizado, resolver todas as obrigações conjuntivas e negar se alguma for violada ou continuar desconhecida.
- Um
allowproduzido ao satisfazer uma janela de tempo vence no fim do intervalo; cache algum pode prolongar essa autoridade sem nova avaliação.
Um enum de três valores em uma esteira de dois
Considere uma rotina de emissão de chaves autorizada das 14h às 14h10 e apenas em uma rede administrativa. O núcleo confirma a rede, mas não recebeu um now confiável. A revision 00 da Capability Language Core não presume a hora: retorna allow_unresolved e conserva a obrigação de relógio.
Esse valor não quer dizer “pode seguir com ressalva”. Ele diz que a decisão ainda não terminou. O consumidor obtém uma hora confiável, fornece a resolution e chama Resolve; se não conseguir, nega. Executar antes de fechar a obrigação transforma um protocolo de autorização em promessa de auditoria futura.
O ponto fraco costuma ser trivial: binding que converte qualquer enum não nulo em verdadeiro, gateway que toma HTTP 200 por permissão ou orquestrador que só conhece sucesso e falha. O adaptador passa a decidir mais que o autor da política.
Reconhecer a forma não comprova a condição
CLC é neutra quanto ao carrier. A verificação do contêiner nativo, a confiança no emissor e a validade da credencial pertencem ao ambiente. A linguagem tampouco executa a ação. Ela avalia uma expressão comum e torna explícito o que não observou.
A revisão reconhece restrições centrais de tempo e rede. Isso permite analisar, normalizar e preservar a regra; não cria um relógio confiável nem uma leitura atual da rede. Apagar uma restrição conhecida por falta de avaliador faria a capability sair do núcleo com mais poder do que tinha ao entrar.
Por isso a condição permanece em unresolved. Várias obrigações do mesmo scheme/type são AND: todas importam. First-wins, last-wins ou “qualquer uma basta” reescrevem a política. Duplicatas equivalentes podem ser condensadas, mas obrigações diferentes não desaparecem.
A ordenação também faz parte da interoperabilidade: a regra usa os bytes UTF-8 especificados, não o comparador padrão da linguagem. A ordem UTF-16 comum em ECMAScript pode divergir. Duas implementações precisam produzir o mesmo inventário pendente; produzir esse inventário não significa satisfazê-lo.
A segunda decisão precisa deixar recibo
Resolve recebe a decisão inicial e as resoluções. Uma obrigação violated leva a deny; somente todas satisfied levam a allow; qualquer unknown mantém allow_unresolved. Material malformado ou timestamp inválido termina em negação. Decisões terminais não são reabertas por dados oportunistas.
O registro operacional deve ligar revisão da linguagem, verificação nativa, enum inicial, conjunto exato de pendências, identidade e versão do avaliador, referência da evidência, momento observado, estado de cada item, enum final e ação liberada. Um log dizendo apenas “resolver chamado” não prova qual evidência completou qual permissão.
Na trilha de evidência, o desconhecido não ganha uma autorização provisória: é UNSATISFIED. Essa assimetria impede que a transparência sobre uma decisão incompleta vire tolerância a uma prova ausente.
Às 14h11, a resposta das 14h09 venceu
Às 14h09, um relógio confiável satisfaz a janela e Resolve pode retornar allow. Um minuto depois termina o horizonte. Reaproveitar o mesmo resultado às 14h11 é decidir de novo sem observar de novo.
Um cache baseado só em sujeito, recurso e ação não carrega a razão temporal. Ele precisa registrar contexto, instante da resolução e o primeiro fim de segmento; sua validade não pode ultrapassar esse ponto. RFC 3339 padroniza a representação de data e hora, mas não escolhe o relógio confiável nem o desvio aceitável.
Containment também não substitui esse teste. Uma capability pode estar estruturalmente contida e ainda ser proibida agora. Pode estar normalizada e vir de um carrier sem confiança. Pode terminar em allow sem que a ação tenha sido executada ou seu efeito observado.
As camadas de realidade de Heng Lu preservam essas diferenças: texto, representação normalizada, observação operacional, ação e resultado são etapas distintas. A especificação inicial mínima pode padronizar a entrega da pendência e deixar confiança e consequência com os responsáveis locais.
A revision 00 relata 123 vetores de conformidade, 1.184 casos de propriedades e três implementações. É evidência útil de código executável, mas as três compartilham um autor e o limiar de implementação independente ainda não foi alcançado. Uma implementação externa deve testar bindings, ordenação UTF-8, restrições repetidas, unknown, timestamps inválidos e o instante exato de expiração antes de tratar interoperabilidade como fato.
Sources and limits
- https://api.github.com/repos/varwof/capability/commits/b15b51b8f94125b7a00aa281f98405806e6ea95c
- https://datatracker.ietf.org/doc/draft-wei-capability-language-core/
- https://datatracker.ietf.org/doc/draft-wei-capability-language-core/history/
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
- https://www.ietf.org/archive/id/draft-wei-capability-language-core-00.html
- https://www.rfc-editor.org/rfc/rfc2119.html
- https://www.rfc-editor.org/rfc/rfc3339.html
- https://www.rfc-editor.org/rfc/rfc7493.html
- https://www.rfc-editor.org/rfc/rfc8174.html
- https://www.rfc-editor.org/rfc/rfc8785.html
- https://www.rfc-editor.org/rfc/rfc9396.html
As fontes estabelecem um Internet-Draft individual ativo, seu corpus público e especificações relacionadas. Não estabelecem consenso da IETF, RFC, adoção por grupo de trabalho, auditoria independente, uso amplo, confiança no carrier ou resultado operacional. Este Artigo trata somente do canal de restrições reconhecidas e não avaliadas, do ciclo Resolve e do vencimento temporal da revision 00.
Briefing para membros
Contexto aprofundado do perfil
Faça login com o nível de assinatura correto para desbloquear o briefing completo e as notas das fontes.
Apenas para Strategic Circle
Strategic Circle
Aberto a todos os leitores. Desbloqueie Briefings de perfil após se inscrever e fazer login.
Junte-se ao Strategic CircleSomente para Leadership Alliance
Leadership Alliance
Para proprietários e gestores qualificados de ativos de PI; faça login para desbloquear os briefings da Leadership Alliance.
Junte-se ao Leadership Alliance

