Skip to content

Releases: Soturine/Prescripta

Prescripta v0.9.3 — Advanced Research Methods, Agentic Evidence & Security Hardening

Choose a tag to compare

@github-actions github-actions released this 13 Aug 04:17

Prescripta v0.9.3

Advanced Research Methods, Agentic Evidence & Security Hardening

This focused release hardens the v0.9.2 research surface. It adds independent numerical reference evidence and sensitivity grids, PostgreSQL-authoritative query planning, governed public evidence metadata acquisition, and bounded proposal-only agent workflows. It also structurally remediates the three known CodeQL findings and establishes repository rulesets compatible with direct-main releases.

Safety boundary

Prescripta remains synthetic/demo/educational only. PSM/IPTW are experimental; sensitivity is not proof of causality. Evidence metadata is not a license to retain full text. Agents and AI produce drafts only. Deterministic services calculate; humans review; registered sources provide provenance.

Release evidence

The exact final SHA, workflow run URLs, artifact hashes and public release URL are recorded after the release gates in the v0.9.3 RC quality report. The annotated tag is created only after CI, Security and Container Smoke are green on that exact SHA.

Prescripta v0.9.2 — Research Copilot v2 & Comparative RWE

Choose a tag to compare

@github-actions github-actions released this 11 Aug 20:33

Prescripta v0.9.2 — Research Copilot v2 & Comparative RWE

A v0.9.2 consolida a próxima vertical de Research no mesmo workspace: um achado auditado de
Medication Safety pode virar draft; dois cohort runs sintéticos podem ser comparados; e o pesquisador
recebe métodos determinísticos, evidência grounded e assistência proposal-only.

Destaques

  • Table 1, missingness, SMD, risco, diferença de risco, RR/OR/IC, pessoa-tempo e incidência;
  • PSM/IPTW experimentais com estimand, overlap, balance, ESS, pesos extremos e abstention;
  • Research Copilot v2 com roteamento governado, provenance e evals adversariais;
  • Literature Copilot com fonte/locator e resistência a prompt injection;
  • NL→SQL default-off, AST/read-only, uma view aggregate-only, escopo e budgets injetados;
  • package v3 com referências exatas e sem linhas de paciente;
  • PT-BR/EN-US e fluxos responsivos no Research Workspace.

Limitações explícitas

Esta release é sintética, demonstrativa e educacional. Não é validada epidemiológica, clínica ou
regulatoriamente; não deve orientar cuidado. Associação não implica causalidade. PSM/IPTW aguardam
validação independente. IA propõe, o motor determinístico calcula e uma pessoa revisa.

Consulte a matriz de fechamento, o
relatório do RC e os
métodos.

Evidência visual sintética

Comparação e Table 1 PSM/IPTW
Table 1 comparativa Diagnósticos experimentais PSM e IPTW
Literature Workspace NL→SQL default-off
Workspace de literatura governada Preview NL para SQL desabilitado

O manifesto registra dimensão, bytes e SHA-256 das oito capturas
reais da aplicação sobre fixture sintética, incluindo Signal Explorer, Copilot, EN-US e mobile.

Prescripta v0.9.1 — Terminology & OMOP

Choose a tag to compare

@github-actions github-actions released this 11 Aug 07:43

Prescripta v0.9.1 — Terminology & OMOP

Release sintético/demonstrativo. Não possui validação clínica, causal, regulatória, OMOP completa ou
de real-world evidence.

Destaques

  • registro institucional de fontes, releases, licença, checksum e proveniência;
  • import controlado de subsets CSV/ZIP-CSV, busca bounded e drift entre releases;
  • mappings versionados com revisão humana independente e falha fechada;
  • Data Quality, outcomes, planos e pacotes vinculados aos runs/versões exatos;
  • Research Package v2 agregado, verificável e com lineage terminológico/OMOP;
  • adapter parcial OMOP CDM 5.4 para sete tabelas clínicas e dados somente sintéticos;
  • UI PT-BR/EN-US com matriz de compatibilidade e RBAC;
  • npm 11.18.0 pinado, install scripts allowlisted e SBOMs de dependências/imagens no workflow.

Limitações honestas

  • DQD não foi executado; Achilles e ATLAS não são suportados;
  • não há bundle Athena/full Standardized Vocabularies;
  • não há conteúdo completo de SNOMED CT, LOINC, RxNorm, ICD ou ATC no repositório/release;
  • não é OMOP network-ready, não é integração hospitalar e não processa dados reais neste fluxo;
  • hashes fornecem integridade reprodutível, não assinatura externa ou WORM.

Consulte a arquitetura/licenças, a
matriz de fechamento e o
pacote reproduzível.

Validação

  • backend: 235 testes, 82,45% de cobertura combinada e 65,15% de branches;
  • frontend: 84 testes, 82,83% statements, 70,67% branches, 79,09% functions e 84,70% lines;
  • E2E: 19 cenários executados com sucesso e 2 skips previstos pelos projetos responsivos;
  • container smoke: PostgreSQL 17.10, migration/rerun, health/restart e runtimes não-root;
  • 736 chaves i18n alinhadas; texto, links, assets, versão, install scripts e npm audit aprovados.

CI, Security, Container, tag e assets do GitHub devem ser verificados no commit final publicado;
resultados locais não são apresentados como aprovação externa.

Evidência visual automatizada

Governança terminológica Compatibilidade OMOP parcial
Registro terminológico governado Matriz e limites do adapter OMOP parcial

As capturas são de fixture sintética e automatizada; não constituem validação por usuário ou
aprovação clínica.

Prescripta v0.9.0 — Research & RWE MVP

Choose a tag to compare

@Soturine Soturine released this 09 Aug 07:17

Prescripta v0.9.0 — Research & RWE MVP

Destaques

  • Study Workspace completo com cinco áreas e prontidão em oito etapas;
  • Cohort Builder visual sobre DSL v2 versionada, limitada e compatível com v1;
  • attrition, Population Analytics, Table 1, missingness e Patient Journey sintética;
  • Data Quality runs/acknowledgement e Analysis Plan com execução descritiva determinística;
  • Research Package aggregate-only com manifesto, hashes e proveniência;
  • Research Copilot v1 estruturado, proposal-only e sujeito a revisão humana.

Segurança e reprodutibilidade

Tenant/capability são aplicados no backend. Jornada falha fechado fora de origem sintética; pacotes
não incluem linhas de pacientes; células menores que 5 são suprimidas. Hashes de execução excluem
campos voláteis. A IA não calcula estatística, executa estudo, muda status, consulta banco ou produz
SQL.

Limitações conhecidas

Esta release não possui validade clínica, epidemiológica, ética ou regulatória independente. Não há
inferência causal, incidência validada, pessoa-tempo, matching, propensity score, terminologia
licenciada completa, OMOP ou integração institucional real.

Baseline: v0.8.9 (4abf516e8be8f37bdb4e6662119b4d82c6d5b1a7).

Prescripta v0.8.9

Choose a tag to compare

@Soturine Soturine released this 09 Aug 05:34

Prescripta v0.8.9

Resumo

A v0.8.9 eleva o piso de qualidade, torna a execução com PostgreSQL reproduzível em containers e
reposiciona a interface como produto healthtech bilíngue, sem expandir decisões clínicas ou RWE além
dos contratos determinísticos da v0.8.8.

Prescripta permanece demonstrativo e educacional. Não é dispositivo médico, não possui validação
clínica, epidemiológica, regulatória ou institucional e não deve ser usado em atendimento ou com
dados pessoais reais.

Quality ratchet

  • cobertura backend separa combined e branches; frontend controla statements, branches, functions e lines;
  • validação incremental evita repetir suítes completas e preserva um único gate local de RC;
  • testes adversariais cobrem resposta inválida/fallback da IA, versões e transições de Research,
    escopo farmacêutico e políticas profissionais;
  • o relatório do RC registra métricas e workflows no SHA efetivamente candidato.

Docker e PostgreSQL

  • imagens backend/frontend multi-stage com bases oficiais por digest e processos sem root;
  • PostgreSQL 17 interno, migração Alembic one-shot e idempotente antes da API;
  • filesystem somente leitura, tmpfs, cap_drop: ALL, no-new-privileges, redes segmentadas,
    healthchecks e limites;
  • smoke cobre build, migration, health, restart e identidade do processo sem duplicar as suítes.

Produto e i18n

  • shell light-first por domínios: cuidado, evidência, pesquisa, governança e ajuda;
  • dashboard e workspaces de paciente, checagem, farmácia, evidências, Research e auditoria com
    componentes clínicos, fonte, cobertura, revisão e aprofundamento progressivo;
  • drawer e barra inferior em mobile, 320 px, teclado, foco, reduced motion e axe representativos;
  • PT-BR e EN-US com seleção persistida, fallback PT-BR, datas/números localizados e status humanos;
  • códigos, hashes, unidades, IDs, enum canônico e terminologia técnica permanecem invariantes.

Orientação e evidência visual

O guia do usuário descreve cada rota, pré-requisito, passo, persistência,
auditoria, IA, autoridade e limitação. Ajuda contextual e glossário ligam a interface ao guia. A
vitrine foi recapturada com fixtures sintéticas, amostra EN-US e manifesto SHA-256.

Supply chain

  • install scripts npm usam policy fail-closed por path/versão exatos;
  • Actions são fixadas por SHA; Trivy escaneia as duas imagens e gera SBOMs CycloneDX;
  • SBOMs de dependências são reproduzíveis e recebem GitHub Artifact Attestations no evento de tag;
  • i18next 26.3.6 e react-i18next 17.0.11 são as únicas dependências diretas novas, ambas MIT e
    sem install script.

Upgrade e rollback

  1. preserve backup PostgreSQL e teste a restauração;
  2. revise .env, secrets, CORS, auto-seed e egress antes de ambiente não local;
  3. execute docker compose up --build ou instale pelos lockfiles no fluxo nativo;
  4. aguarde o serviço migrate concluir e confirme health da API/frontend;
  5. valide capacidades, locale, protocolos e fontes antes de liberar usuários.

Rollback de aplicação exige imagem/commit compatível e backup. Não use docker compose down --volumes quando precisar preservar os dados.

Evidências e limitações

Pentest, DLP, assinatura Git sem chave configurada, validação de rulesets/terminologia, avaliação
epidemiológica, estudo de usabilidade assistiva, zoom/alto contraste reais, QMS, LGPD institucional e
deployment produtivo permanecem externos.

Publicação

Verificação da publicação

Prescripta v0.8.8

Choose a tag to compare

@Soturine Soturine released this 08 Aug 04:30

Prescripta v0.8.8

Resumo

A v0.8.8 consolida Medication Safety e cria fundações coerentes para Research & RWE e Evidence
Intelligence. O novo vertical slice liga versões revisadas, cohort DSL, execução determinística,
attrition, snapshots, Data Quality e provenance, sempre sobre fixtures sintéticas e sem inferência
causal.

Prescripta permanece uma plataforma demonstrativa e educacional. Não é dispositivo médico, não
possui validação clínica, epidemiológica, regulatória ou institucional e não deve ser usada em
atendimento ou com dados pessoais reais.

Workflows profissionais e dose

  • enfermagem só prescreve dentro de versão vigente e revisada de protocolo institucional, com
    capacidade, vínculo, credencial, escopo e coassinatura quando exigida;
  • intervenções farmacêuticas possuem lifecycle, eventos, idempotência e versão otimista, sem alterar
    automaticamente uma prescrição;
  • reconciliação permanece granular e a revisão de formulação sempre exige decisão humana;
  • faixa usual de dose agora explicita unidade, escopo, inclusão dos limites, normalização corporal e
    precisão decimal;
  • o request unit of work é o único dono de commit/rollback; serviços executam flush().

Research, RWE e Evidence Intelligence

  • estudos, protocolos, concept sets, coortes e outcomes são institucionais, versionados e revisados;
  • objetos revisados e runs concluídos são imutáveis; correções criam novas versões;
  • a DSL recusa SQL livre e limita critérios, operadores, predicados, janelas e custo;
  • runs aggregate-first persistem attrition, marcador do dataset, versões, hashes e snapshot sem IDs;
  • Data Quality detecta inicialmente datas impossíveis, intervalos invertidos, quantidades/unidades
    inválidas, conceitos órfãos e critério sem concept set;
  • fontes e vínculos de evidência carregam jurisdição, versão, licença, autoria e estado de revisão.

AI Task Router

O gateway roteia tarefas tipadas entre fallback, OpenAI, Gemini, Ollama e endpoints compatíveis,
respeitando classificação e providers permitidos. Contexto é minimizado, source IDs são validados e
saídas de coorte passam pela DSL. AIInteraction registra provider/modelo, template/schema, hashes,
latência, fallback e revisão humana. A saída é somente proposta: o LLM não executa consulta, conta
pacientes, publica protocolo ou escreve no domínio.

Dependências e segurança

Updates compatíveis de backend, frontend e CodeQL foram reproduzidos em commits próprios. Nenhum PR
Dependabot foi mesclado ou cherry-picked. Node types 26, Vite 8, jsdom 30 e Lucide 1.x permanecem
deferidos por blockers objetivos; pydantic-core não foi elevado isoladamente do Pydantic.

React Router 7.18.2 está listado como corrigido na versão atual do advisory
GHSA-qwww-vcr4-c8h2. A exceção temporária foi removida e qualquer high/critical volta a falhar o
gate sem allowlist.

O pip-audit final detectou PYSEC-2026-3552/CVE-2026-69247; cryptography foi elevado para
50.0.0, a primeira versão corrigida, e os fluxos Fernet de credenciais/segredos foram revalidados.

Upgrade e rollback

  1. faça backup PostgreSQL e valide a restauração;
  2. instale pelos locks com Python 3.12+ e Node 24 compatível;
  3. execute alembic upgrade head; o head esperado é 42168c1cc660;
  4. revise capacidades, protocolos, credenciais e usuários pesquisadores antes de habilitar acesso;
  5. mantenha IA externa desligada até configurar egress, secret manager, finalidade e policy;
  6. execute todos os gates de CI e release.

Rollback requer aplicação compatível e backup. alembic downgrade foi testado estruturalmente, mas
não substitui restauração de dados. Versões revisadas/runs devem ser preservados para auditoria antes
de qualquer rollback destrutivo.

Evidências e limitações

Validação clínica/epidemiológica, vocabulários licenciados, QMS, regulação, LGPD institucional,
pentest, DLP, small-cell suppression, usabilidade assistiva humana e interoperabilidade oficial
continuam externos.

Publicação

Prescripta v0.8.7

Choose a tag to compare

@Soturine Soturine released this 29 Jul 09:55

Prescripta v0.8.7

Resumo

A v0.8.7 fecha lacunas técnicas comprovadas após a v0.8.6: dose verdadeiramente dimensional,
autorização por relação clínica explícita, perfis profissionais por capacidades, proteção contra
DNS rebinding, atualização controlada da cadeia de dependências e uma nova interface responsiva com
cobertura frontend/browser material.

Prescripta permanece uma demonstração educacional 0.x. Não é dispositivo médico, não possui
validação clínica/regulatória/institucional e deve usar somente dados fictícios.

Segurança clínica e autorização

  • concentração × volume, massa, peso, superfície, infusão, taxa, intervalo, duração e PRN usam
    dimensões canônicas, precisão decimal e abstention quando a conversão não é provada;
  • limites diários, por administração, procedimento, taxa e cumulativos preservam unidade e fonte;
  • a mesma instituição deixa de ser autorização implícita: lista e objeto exigem relação, purpose e
    capability; break-glass tem duração, motivo, idempotência, encerramento e auditoria;
  • override não altera o achado: só o autor solicita, crítico/hard block não admite, e um segundo médico
    distinto precisa revisar conforme a policy;
  • segmentos psicológicos possuem capacidade separada.

Segurança de saída

OpenAI e Gemini usam destinos oficiais; Ollama é local-only. A policy normaliza URL, valida todos os
IPs, fixa a conexão no endereço aprovado, preserva Host/SNI, ignora proxies, bloqueia redirects e
limita tempo/tamanho. Credencial nunca é encaminhada fora do destino autorizado.

Frontend e qualidade

  • design system Tailwind 4, shell por capacidades, drawer responsivo, breadcrumbs, skip link, foco e
    reduced motion;
  • dashboards e workspaces próprios para os sete perfis demonstrativos;
  • checagem estruturada exibe decisão, cobertura, fontes, dados faltantes, auditoria, relatórios e IA
    apenas depois da persistência;
  • Vitest possui thresholds de statements/lines 75%, functions 70% e branches 65%; Playwright cobre
    sessão, perfis, autorização, dose, override/revisão, auditoria, falhas, responsividade, axe e visual;
  • assets correntes são recapturados por script e verificados por manifesto SHA-256.

Dependências

Backend, frontend e Actions foram atualizados em commits separados. Actions permanecem fixadas por
SHA completo. pydantic-core 2.47 foi corretamente deferido porque Pydantic 2.13.4 exige 2.46.4.
React Router 7.18.2 mantém risco temporário documentado para a superfície RSC não usada pela SPA; o
gate expira em 15/08/2026.

Upgrade e rollback

  1. Faça backup PostgreSQL e teste a restauração.
  2. Instale pelos locks com Python 3.12+ e Node 24+.
  3. Execute alembic upgrade head; o head esperado é b87a224c617e.
  4. Revise os grants/care teams/care episodes gerados pelo backfill; tenant não basta mais.
  5. Mantenha IA externa desligada até configurar allowlist, egress, secret manager e policy.
  6. Execute os gates de docs/testing/ci-and-release-gates.md.

Rollback exige restaurar backup compatível e reverter aplicação/migrations em ambiente isolado. Não
use alembic downgrade como substituto de recuperação de dados. O redesign frontend pode ser revertido
independentemente das regras do backend.

Evidências e limitações

Validação clínica por especialidade/farmácia/enfermagem/psicologia, pentest, LGPD institucional,
interoperabilidade oficial, usabilidade assistiva e enquadramento regulatório continuam externos.

Publicação

Prescripta v0.8.6

Choose a tag to compare

@Soturine Soturine released this 29 Jul 05:58

Prescripta v0.8.6

Resumo

Esta é a consolidação correta da linha v0.8.6. A entrega elimina falsos verdes conhecidos,
centraliza a decisão clínica determinística, introduz dose dimensional e snapshots imutáveis, endurece
autorização/sessão/IA, adiciona Alembic/PostgreSQL aos gates e registra com precisão o que permanece
fora do escopo.

A release histórica v8.6.0 foi numerada incorretamente. Ela permanece preservada e não recebe
retroativamente os hardenings desta entrega. A versão corrigida e consolidada é v0.8.6.

A maturidade não foi inflada: Prescripta continua 0.x, demonstrativo e educacional. Não é
dispositivo médico validado, EHR/HMIS operacional, servidor FHIR, implementação SMART ou serviço CDS
Hooks conforme. Não use em atendimento ou com dados reais.

Principais mudanças

Decisão, cobertura e dose

  • ClinicalDecisionEnvelope é a fonte canônica de status, severidade, achados, ações, fontes, dados
    ausentes e cobertura.
  • CRITICAL e hard block possuem precedência e não podem coexistir com resposta favorável.
  • Falta de regra, contexto ou fonte vigente produz abstention/cobertura insuficiente, nunca “sem risco”.
  • O endpoint de checagem resolve paciente, medicamento, regras e limites no servidor; o cliente não
    injeta conhecimento clínico.
  • Dose usa quantidade/unidade/dimensão explícitas para massa, frequência, taxa, infusão e procedimento.
    Conversões mg/mcg/g são exatas; dimensão incompatível e sexo necessário ausente causam abstention.

Snapshot, auditoria e autorização

  • Cada decisão persiste snapshot imutável com JSON canônico e hash
    sha256-canonical-json-v1; relatório histórico de prescrição lê somente o snapshot.
  • Decisão, eventos e snapshot formam uma transação única com rollback e idempotência persistente.
  • Backend aplica instituição e grant por paciente em rotas por objeto, incluindo relatório, export e
    counseling; testes negativos cobrem tenant escape.
  • Exports de auditoria percorrem páginas até limite explícito e incluem manifesto com total retornado e
    flag de truncamento em PDF, JSON e CSV.
  • Override é evento separado: exige justificativa, autoria clínica e segundo revisor independente;
    crítico/hard block não admite override.

Segurança, IA e busca lexical

  • Browser usa cookie HttpOnly/SameSite; login possui lockout persistente e MFA TOTP opcional.
  • Ambiente não local rejeita segredo demo, SQLite, auto-seed, CORS local/wildcard e ausência de chave de
    criptografia. Health público revela apenas status=ok.
  • URLs de provider externo exigem HTTPS, allowlist e IP público; redirects não são seguidos. Ollama local
    é exceção exclusiva do modo local.
  • Explicação clínica recebe audit_id, autoriza o objeto, lê o snapshot e envia somente allowlist
    minimizada. IA não altera decisão, risco, dose, bloqueio ou recomendação final.
  • Credenciais persistidas são criptografadas e o circuit breaker usa estado compartilhado no banco.
  • A base interna agora usa índice lexical versionado, chunks, IDs/hashes de fonte, deduplicação, validade
    e filtro heurístico de prompt injection. Isso não constitui RAG clinicamente validado.

Dados, banco e qualidade

  • Terminologia confirmada usa código, termo exato ou alias; substring/fuzzy não decide alergia ou
    interação.
  • Data de nascimento é autoritativa e idade é calculada na data clínica; divergência recebida é rejeitada.
  • Pacientes e medicamentos possuem paginação server-side nos fluxos principais.
  • Alembic passa upgrade, downgrade, upgrade e schema check; produção exige schema no head.
  • CI executa PostgreSQL 17, backend Ubuntu/Windows, frontend, Playwright, cobertura de branches com gate
    de 80%, CodeQL, pip/npm audit, gitleaks e SBOM CycloneDX. A suíte local desta release possui 132 testes
    backend e mede 81,28% em app.
  • Conversões de massa ganharam teste baseado em propriedades com Hypothesis.

Documentação e assets

  • README atual é uma entrada estável; histórico fica no changelog, auditorias e releases.
  • Foram adicionados threat model, clinical safety hazard log, runbooks de backup/restauração e resposta
    a incidentes, além de benchmark com fontes primárias consultadas em 29/07/2026.
  • docs/audit foi consolidado em docs/audits/docs/auditing; somente docs/audiences permanece.
  • Evidência visual corrente fica em docs/assets/current; a coleção histórica foi preservada.

Hashes SHA-256 dos assets correntes:

459f5bd6c1f525b744070175dcdc4b2fccc58ec4222d94199973150857764167  docs/assets/current/ai-health.png
35660390e7bfecf3bd2dcabfaab9c4dd8e91795b43dcb469de66b55038bd2380  docs/assets/current/dashboard-readiness.png
68d687c6e974c217290f13eb1c2e7968550af1e00c0ca2ed5ed7c7f8bbb8b2b6  docs/assets/current/prescripta-current-demo.gif
d7b11bef57bbe3686d278c190d5deb2553ec980c7f378bcf807487008bd3fd6c  docs/assets/current/protocols-list.png
01ab0adb00361a8c4169ce991cf667873e70a26dbbdc2aa0ab5e81e4c010e3af  docs/assets/current/reports-detail.png

Commits da consolidação

  • 29408f5 — versão e metadados v0.8.6;
  • 4d5fa41 — estrutura de auditorias/audiências;
  • a4ed84e — decisão canônica, dose dimensional, snapshot e transação;
  • 6d874e8 — autorização por objeto e hardening de aplicação/IA;
  • b927c03 — Alembic e migration baseline;
  • 6221fb6 — cookie de sessão, frontend estrito e lint real;
  • df00123 — CI, scans, proveniência e gates;
  • daa872a — exports completos e manifesto;
  • e49e254 — terminologia, integridade, paginação e remoção de código morto;
  • 8e9072d — override governado e estado de provider compartilhado;
  • 75d3988 — cobertura e property-based testing;
  • 18e9b1d — arquitetura de segurança, limites e operações;
  • 8f2562b — separação efetiva de dependências runtime/dev;
  • b0134ea — gates separados de lint e typecheck;
  • 5f9a718 — correção do pin de setup-node e da profundidade do checkout de qualidade;
  • v0.8.6^{commit} — correção final dos gates e evidência de fechamento/publicação.

Breaking changes e deprecações

  • Checagem CDS rejeita regras/limites clínicos fornecidos como verdade pelo cliente e pode retornar
    abstention quando IDs/contexto não forem resolvidos.
  • Browser não lê mais bearer token do localStorage; integrações web devem permitir cookies e
    credentials. A resposta bearer para clientes de API é transitória.
  • Ambiente não local não inicia com SQLite/defaults demo e não cria schema automaticamente.
  • Deploy existente deve executar Alembic antes de iniciar a aplicação.
  • Idade divergente da data de nascimento é rejeitada; consumidores devem tratar birth_date como fonte.
  • Listagens e exports podem retornar paginação/manifesto adicionais.
  • MedicationModel e listas string de fatos permanecem compatibilidade legada e estão deprecados para
    novos fluxos; não há prazo de remoção nesta release.

Upgrade

  1. Faça backup e teste a restauração em ambiente isolado.
  2. Instale Python 3.12+, Node.js 24+ e dependências pelos lockfiles (requirements-lock.txt e
    package-lock.json). Use requirements-dev.txt apenas em desenvolvimento/CI.
  3. Configure PostgreSQL, segredo forte, PRESCRIPTA_AUTO_SEED=false, CORS explícito e
    PRESCRIPTA_CONFIG_ENCRYPTION_KEY; mantenha chamadas externas de IA desligadas até configurar
    allowlist, credencial e política institucional.
  4. No diretório backend, execute alembic upgrade head e confirme alembic current/alembic check.
  5. Execute os gates descritos em docs/testing/ci-and-release-gates.md e valide login/cookie, grants,
    snapshots e relatórios com dados fictícios.
  6. Não migre dados reais sem DPIA/RIPD, retenção, backup, resposta a incidentes, validação clínica e
    avaliação regulatória próprias.

Limitações conhecidas

  • P0-10 depende de validação clínica, QMS, segurança clínica e enquadramento regulatório externos.
  • Catálogo/rulesets são demo e não cobrem medicamentos, populações ou especialidades de forma suficiente.
  • RiskEngine, protocolos e cliente frontend ainda possuem módulos grandes; fatos clínicos e catálogo
    legado não foram migrados integralmente.
  • Não há OIDC/BFF, revogação central de JWT, DLP independente, WORM, object storage, egress firewall,
    observabilidade produtiva ou secret manager integrado.
  • Branch protection depende de configuração externa do GitHub; esta publicação seguiu a autorização
    excepcional de commits diretos na main.
  • FHIR-like é apenas importação parcial; SMART/CDS Hooks, terminologia oficial e conformidade não existem.
  • Busca lexical não possui avaliação formal de recall, precision, groundedness, poisoning ou drift.
  • O risco npm temporariamente aceito está delimitado em docs/security/accepted-risks.md e expira em
    15/08/2026.

Consulte a matriz de fechamento, o
relatório final, o
modelo de ameaça e o hazard log.

Identidade da publicação

Aviso: conteúdo exclusivamente demonstrativo e educacional. Não substitui avaliação profissional,
bula, protocolo, autoridade sanitária ou decisão institucional.

Prescripta v8.6.0

Choose a tag to compare

@Soturine Soturine released this 11 Jul 19:14

Correção de numeração: esta release foi publicada como v8.6.0, mas corresponde à linha
v0.8.x. O conteúdo histórico abaixo foi preservado e não inclui retroativamente os hardenings
posteriores. A versão corrigida e consolidada é Prescripta v0.8.6.

Prescripta v8.6.0

CI Recovery, Repository Consolidation, Clinical Product Hardening, Premium UX e Documentation
Expansion.

O destaque desta versão é o gate de publicação: checker Python, backend Ubuntu/Windows, frontend,
smoke e release-readiness devem passar para o mesmo SHA antes da tag. Auditoria ganhou paginação
com metadados e count coerente; dependências foram travadas; warnings foram corrigidos.

Consulte a auditoria prévia, a
rastreabilidade e a
política de release. Itens parciais permanecem explícitos.

Prescripta v0.8.5

Choose a tag to compare

@Soturine Soturine released this 11 Jul 07:48

Prescripta v0.8.5

Full Repository Audit, Product Polish, Consistency & Performance Hardening.

Esta release corrige licença e encoding, torna o controle textual bloqueante, move filtros e
paginação de auditoria para SQL e fortalece Dose Intelligence, Psychotropic Safety, policy,
documentos e catálogo. O frontend ganhou navegação responsiva por perfil, design tokens e uma
separação mais clara entre visão clínica e técnica.

Evidências

  • auditoria: docs/audits/v0.8.5-full-repository-audit.md;
  • qualidade final: docs/audits/v0.8.5-final-quality-report.md;
  • aceite: docs/product/v0.8.5-acceptance-matrix.md;
  • performance: docs/performance/v0.8.5-baseline.md;
  • screenshots e GIFs reais: docs/assets/v0.8.5/.

Limites

O produto permanece educacional e demonstrativo. IA não decide risco, dose, bloqueio ou policy.
Validação clínica externa, Docker, PostgreSQL, Alembic, storage e deploy ficam fora desta release.