Fonte: SDRs/sdr-0017-site-html-rastreabilidade.md
SDR — Site HTML e rastreabilidade editorial
Eixo:
Ambos(Modelo de Servicos | Arquitetura Contratual | Ambos)
| Campo | Valor |
|---|---|
| SSoT | Sim — dono das regras para agentes manterem o site, paginas HTML e rastreio com documentos Markdown |
| Estado | âncora para arquitetura-contratual/modelo-central-servicos.html e site/ |
1. Finalidade
Garantir que o site seja uma interface de navegacao e explicacao do modelo, alinhada aos SDRs e aos documentos de contratacao.
2. Regras canônicas
- O site nao deve ser dono de regra normativa quando houver
sdr-*dono. - Paginas HTML podem conter resumo, visualizacao e texto explicativo, mas devem apontar a fonte.
- A versao multipagina em
site/deve manter navegacao por temas: inicio, governanca, operacao, seguranca, planejamento, aspectos comuns, mapa de localidades e outros. - O arquivo continuo
modelo-central-servicos.htmlpode funcionar como documento de referencia ampliado. - Alteracao em SDR que afete site deve atualizar links, resumos e blocos de texto integral quando existirem.
3. Estrutura minima do site
- pagina inicial com arquitetura C1/C2/C3;
- pagina de governanca com IMR, ANS, RACI, glosas e PPSI/LGPD;
- pagina de operacao com escopo C2, niveis e capacidade;
- pagina de seguranca com escopo C3, SOC, IAM, backup e continuidade;
- pagina de planejamento com DFD, ETP, TR, riscos, precos e SDRs;
- pagina de aspectos comuns com evidencia, preco, transicao, ARRC e integracao.
- pagina de mapa de localidades (
mapa-ibama.html) com Leaflet, dados gerados e legenda de precisao de coordenada. - Marca / titulo do site: texto unico Central de Serviços de TI em
<title>das paginas (padrao{Secao} — Central de Serviços de TIquando couber),<h1>da pagina inicial (site/index.html), rodape (<footer>) das paginas HTML e no documentomodelo-central-servicos.html. Nao usar a expressao legada Modelo de Contratação de Operações de TI (misturava eixo de serviços com contratação; verglossario-eixos.md). - Busca nas paginas multipagina em
site/: interface emsite/assets/js/site-search.js, indice estatico emsite/assets/js/site-search-index.js(gerado; nao editar manualmente como fonte), geracao pelo scriptarquitetura-contratual/scripts/gerar_site_search_index.pya partir dos HTML do site. Ao alterar titulos ou conteudo relevante para busca, regenerar o indice e validar na UI. - Siglas (tooltip de texto): script
arquitetura-contratual/site/assets/js/siglas.js, incluido com<script src="./assets/js/siglas.js" defer></script>nas paginas multipagina dosite/(e emver-md.html) que devem oferecer o glossario. O tooltip e o atributo nativotitledo HTML em<abbr class="sigla" title="…">…</abbr>(comportamento do navegador, nao biblioteca de UI). O script percorre o texto visivel fora decode,preesvg, envolvendo ocorrencias exatas das chaves do objetoGLOSSARIOdefinido no propriosiglas.js; em SVG, usar o mecanismo documentado no arquivo (SVG_TITULOS). HTML ja marcado com<abbr class="sigla" …>(ex.: tabela RACI) permanece. Nova sigla: acrescentar chave e texto dotitlenoGLOSSARIO; manter comentario de cabecalho do arquivo alinhado a este SDR. Nao duplicar aqui a lista inteira de entradas — a fonte operacional das chaves e o JS. - Espelho estatico no Firebase (
site/repositorio/): gerado porarquitetura-contratual/scripts/sync_site_repositorio.pyantes do deploy — copiaSDRs/,Informacoes-gerais/,PPSI/, arquivos-chave deprocesso-contratacao/, Markdown de apoio emDados-ibama/e minutas emarquitetura-contratual/para URLs profundas sob o mesmopublicdo Hosting. Os linksver-md.html?f=devem usar caminhos relativos asite/(ex.:repositorio/SDRs/sdr-0001-….md). O documento ampliado e publicado comosite/modelo-central-servicos.html(copia pelo mesmo script, com reescrita de links internos). Limitacao: arquivos.mdservidos como estaticos nao passam peloaccess-gate.js; o token protege sobretudo a entrada pelas paginas HTML que carregam o gate (ver comentario emsite/assets/js/access-gate.js). - HTML estatico por SDR (
site/sdr/): gerado porarquitetura-contratual/scripts/gerar_html_estatico_sdrs.pya partir deSDRs/sdr-*.md— uma pagina.htmlpor SDR com conteudo completo no primeiro carregamento (importacao por URL em ferramentas que nao executam o fetch dover-md.js). Incluisite/sdr/index.html(catalogo). Dependencia Python:markdown(lista emrequirements-gerar-html-sdr.txt). Guia para Notebook LM:docs/notebook-lm-fontes.md. Ordem sugerida com deploy:sync_site_repositorio.py→gerar_html_estatico_sdrs.py→gerar_site_search_index.py. - Lista de URLs para Notebook LM (
site/sdr/urls.txt): gerado pelo scriptarquitetura-contratual/scripts/gerar_site_search_index.pyao final de sua execucao — contem uma URL absoluta por linha cobrindo todas as paginas do site (site/*.html+site/sdr/*.html), exceto paginas utilitarias (ver-md.html,planejamento-redirect.html). URL publica:https://centralservicos.web.app/sdr/urls.txt. Usar essa URL diretamente no campo "Adicionar fonte por URL" do Notebook LM (ou equivalente) para importar todo o corpus do site de uma vez. O arquivo e regenerado automaticamente a cada deploy; nao editar manualmente. - Verificacao de links e inventario de URLs (Notebook LM): script
arquitetura-contratual/scripts/verificar_links_e_inventario_site.py— varrehref/srcnos HTML dosite/, valida destinos no disco (incluiver-md.html?f=), gravasite/diagnostico/relatorio-links-falhas.{md,json}e gerasite/notebook-lm-urls.txt(uma URL absoluta .html por linha, virgula no final; opcional--include-repo-mdmapeia espelhorepositorio/SDRs/sdr-*.mdpara URLsdr/sdr-*.html, nunca.mdno inventario). Rodar apos sync + HTML estatico;--base-url(defaulthttps://centralservicos.web.app). - Roadmap CS: pagina
roadmap-cs.html(subitem de Outros); registro emSDRs/cs-roadmap/registro.yaml; geracao da tabela porgerar_roadmap_cs_html.py. Esquema normativo: sdr-0027 — nao abrir segundo SDR so para o roadmap.
4. Regras para agentes
- Ao editar site, preservar links relativos e navegacao.
- Nao duplicar tabelas longas sem indicar fonte.
- Se uma regra mudar, atualizar primeiro o SDR dono e depois o site; a ordem SDR → consumidores (site, minutas,
processo-contratacao/) em processos de agente está em sdr-0025 — edição desdr-*.mdem pedido dedicado: sdr-0021 §8.4. - Usar linguagem curta, navegavel e coerente com o documento tecnico.
- Ao incluir nova pagina HTML em
site/que deva ter glossario de siglas, carregarsiglas.jscomo as demais e validar tooltip em termos doGLOSSARIO. - Ao alterar
.mdembutidos no visualizador offline, rodarnode arquitetura-contratual/tools/gerar-bundle-md-portatil.mjspara atualizarportable-md-bundle.js.
5. Consumidores
Site HTML, README de arquitetura-contratual/, apresentacoes e revisoes de arquitetura contratual e de serviços.
6. Mapa Leaflet (Ibama — localidades)
A pagina arquitetura-contratual/site/mapa-ibama.html, os scripts site/assets/js/mapa-ibama-data.js (gerado) e site/assets/js/mapa-ibama-init.js, o link em site/outros.html, e os KML em Dados-ibama/ estao especificados em sdr-0020 (comandos de regeneracao, casamento de nomes, variante byCodex e variante dimensionamento). Nao duplicar aqui o procedimento completo.
Ao regenerar o site/mapa a partir dos SDRs:
- Rodar
python Dados-ibama/gerar_mapa_ativos_bycodex.py. - Rodar
python Dados-ibama/_calc_mapa_ativos.py. - Rodar
python Dados-ibama/gerar_kml_mapa_ibama.py. - Confirmar que
site/mapa-ibama.htmlcarregaassets/js/mapa-ibama-data.jseassets/js/mapa-ibama-init.js.
Ligacoes
- sdr-0003-indice-fonte-unica.md
- sdr-0015-rastreabilidade-normativa.md
- sdr-0020-dados-ibama-mapa-ativos-cmdb-kml.md
Agentes de conformidade (Cursor)
Os três agentes abaixo aplicam-se à edição e à revisão dos arquivos SDRs/sdr-*.md (exceto SDRs/templates/ e normas em SDRs/governance/). Este bloco é informativo; use o script na raiz do repositório para diagnóstico estrutural.
| Agente | Regra Cursor | Norma em SDRs/governance/rules/ |
|---|---|---|
| Verificador de conformidade SDR | sdr-conformity-checker.mdc |
sdr-conformity-checker.md |
| Detector de implementação sem vínculo SDR | implementation-without-sdr-detector.mdc |
implementation-without-sdr-detector.md |
| Anti-vibecoding sem SDR | no-vibecoding-without-sdr.mdc |
no-vibecoding-without-sdr.md |
Processo: governance/README.md · Rastreabilidade código: traceability.md · Checagem: python scripts/check_sdr_conformity.py (na raiz do repositório).