docs(proactive): mirror installed supply receipt and preserve remaining coverage

This commit is contained in:
2026-10-28 19:27:28 +02:00
parent 3c293dbee0
commit dc34894bde
4 changed files with 437 additions and 7 deletions
@@ -1553,3 +1553,18 @@ Sete testes dirigidos/62 asserções, TypeScript e compilação QA passaram. As
Actualizados os cinco requisitos existentes `RF-CLU-003`, `MASTER-471012ab-0010`, `M2-d0c06a75-0147`, `M2-d0c06a75-0151` e `MASTER-1f0a4cde-0002`, preservando o restante estado e pendências. Nenhuma matriz ou backlog novo. A entrega activa futura mantém conferência de capacidade/compatibilidade com main, backup/restauro fresco, operação autenticada e delta instalado. Relatório: `docs/investmoz/unification/proactive-existing-supply-qa-20261028.json`.
Complemento final: as 18.423 linhas empresariais sem denominação social também foram conservadas, com essa lacuna explícita e sem reutilizar o nome pessoal do requerente. As 343.041 observações da primeira fotografia permaneceram idênticas; extensão e repetição idempotente atingem 361.464 sem substituir registos, alterar as comparações ou rever as provas aceites. Os exemplares e as fotografias anteriores foram preservados.
## 28/10/2026 — base comparativa instalada pelo Git; conferência visual autenticada pendente
Instalada e servida a revisão **`6d147693`**, que inclui o candidato aceite `a022ed98`, por fast-forward normal em `main`, sem força. A revisão569a1cd7 e os backups anteriores foram preservados. O carregamento privado foi executado em transacção autenticada depois de backup novo, restauro isolado e ensaio idempotente; o instalador Git, as suas guardas e a CI habitual foram conservados. O contrato recebeu apenas o hash da migração nova, mantendo os90 anteriores.
**361.464 observações administrativas não são361.464 empresas únicas.** As147.165 repetições foram conservadas, mas excluídas das contagens/resultados; as214.299 projecções administrativas distintas também não equivalem a empresas únicas. Em Gurué, o serviço instalado recupera435 observações distintas e conserva237 repetições fora dessa contagem. A API também recusa gravar uma repetição como outra comparação: apenas esse delta recebeu teste dirigido1/2asserções. As7provas/62asserções, tipos, compilação e percurso QA aceites foram reutilizados.
A aplicação, com a sua conta real e um actor existente que satisfaz as autorizações anteriores, consultou Gurué e conservou fonte/linha/data/hash. O resultado vazio foi «Informação insuficiente nesta base e nestes filtros.» Sem actor/contexto, a RLS devolveu0; acesso HTTP anónimo recusado401. Isto é conferência técnica do consumidor instalado, **não uma nova aceitação da equipa no navegador**. A conferência visual autenticada permanece pendente por bloqueio do mecanismo Windows de confirmação segura do URL; não pedir nova aceitação das provas QA nem confundir essa pendência com perda da funcionalidade entregue.
Backup fresco de174tabelas públicas e369ficheiros/configuração; restauro sem rede/55441 e os174checksums passaram. As duas tabelas privadas também foram carregadas, repetidas e restauradas no ensaio. Medidos344.399.872bytes para as novas relações;capacidade conferida antes da instalação. No activo, as linhas anteriores foram preservadas e os369ficheiros/configuração ficaram idênticos; o delta esperado é de2tabelas privadas e1registo de migração. Cache queue:restart e2sessões anónimas de conferência foram reconciliados separadamente. Foi criado também backup da base privada já instalada, preservando GRANT/RLS. Não se criaram utilizadores, organizações, oportunidades ou dossiers QA no activo, nem se publicaram as listas.
CI habitual do instalador: PostgreSQL1/3106asserções, Unit59/317, frontend1146aprovados/0falhas, tipos e build31,30s. O script do instalador e as configurações/ficheiros anteriores mantiveram-se; apenas leitura nas duas tabelas novas foi concedida à conta de aplicação existente. Não houve alteração de papéis de funcionários.
**Pendências conservadas:** cobertura nacional parcial,205.608observações sem território canónico único,336só com província,82.864sem designação CAE,113.880com divergências de denominação/identificador e18.423sem denominação social, todas preservadas. A ausência de registos é informação insuficiente. A comparação fundamenta uma hipótese, sem comprovar procura ou viabilidade. O caso/dossier QA anterior mantém-se em QA e não foi transplantado para o activo. **L8 permanece parcial e inalterado.** A actualização continua nos cinco requisitos existentes, sem nova matriz ou backlog. Recibo:`docs/investmoz/unification/proactive-supply-git-delivery-20261028.json`.
@@ -0,0 +1,400 @@
{
"date": "2026-10-28",
"status": "installed_technical_delta_verified_authenticated_visual_conference_pending",
"served_commit": "6d1476936920dc5715d4493b1f8b22a3d51935f4",
"accepted_QA_candidate": "a022ed9848b41ba342b4209414c2bbf2ebd0a7a3",
"previous_runtime": "569a1cd750f3d2a0b87f130e992e73e070bbd1ab",
"normal_Git_fast_forward": true,
"force_used": false,
"original_QA_and_history_preserved": true,
"scope": "private comparative supply base integrated into existing proactive journey;not automatic public directory",
"counts": {
"administrative_observations": 361464,
"repetitions_preserved": 147165,
"distinct_administrative_projections": 214299,
"unique_companies": null,
"Gurué_distinct_observations": 435,
"Gurué_repetitions_excluded": 237,
"comparison_API_rejects_preserved_duplicate_as_another_comparison": true
},
"limits": {
"national_coverage": "partial",
"missing_records": "insufficient information;never proof of absent supply",
"investment_conclusion": "hypothesis only;no automatic proof of demand,capacity,contracts or viability",
"unmapped_territory": 205608,
"province_only": 336,
"activity_unclassified": 82864,
"shared_identifier_name_conflicts": 113880,
"unnamed_observations_preserved": 18423
},
"backup": {
"stage": "/var/backups/investmoz-proactive-supply-delivery-20261028/backup-install",
"created_at": "2026-10-28T17:10:23Z",
"target": {
"database": "teste_investidor",
"port": 5432
},
"tables": 174,
"files_verified": 369,
"dump_sha256": "1a0bc3767062633ba35afe1308c7f29ef441a01dba35551534ed1eef9e8e8509",
"files_sha256": "e622cdd04a252740ad1d0c626a9de32aaf1e71f3c986591cdbd94bafd314a1d7",
"restore_verified": false
},
"backup_restore_rehearsal": {
"restore_verified": true,
"tables_verified": 174,
"container_network": "none",
"database": "proactive_supply_delivery_20261028_test",
"port": 55441,
"source_dump_sha256": "1a0bc3767062633ba35afe1308c7f29ef441a01dba35551534ed1eef9e8e8509",
"active_database_writes": 0,
"private_import_first": {
"candidate": "a022ed9848b41ba342b4209414c2bbf2ebd0a7a3",
"records": 361464,
"source_counts": {
"1ba4c4114b16b407e7746712d00d4f681246bbbc1b42351e96a31f7129acad30": 148556,
"1b5087b464e39e88c42def39655c2391aaaf684b4c832d6a77ff274b98889f00": 212631,
"f02e086ed4973ef17234aa6cc54b98fbb7a6952ffb16ec4dc4f7d0c72af6400c": 277,
"83b4f1200988e99834c2ae3915346fbf237d128308554b67b5a080d4956bf506": 0
},
"raw_sha256": "dec9db62a52a8bac5f1e2675aecbeb4239f2b1f4fa521db01693c32bdfeef01e",
"sql_bytes": 201634556,
"mode": "rehearsal",
"unique_company_count": null,
"duplicate_suppression": "WHERE duplicate_of IS NULL;retained administrative sightings do not count as separate offers",
"national_coverage": "partial",
"investment_conclusion": "hypothesis only;does not prove demand or viability",
"database": "proactive_supply_delivery_20261028_test|55441",
"before": 0,
"after": {
"records": 361464,
"distinct_observations": 214299,
"repeated_projections": 147165,
"not_unique_companies": true,
"published": false
},
"idempotent_no_overwrite": true,
"active_existing_business_data_touched": false
},
"private_import_replay": {
"candidate": "a022ed9848b41ba342b4209414c2bbf2ebd0a7a3",
"records": 361464,
"source_counts": {
"1ba4c4114b16b407e7746712d00d4f681246bbbc1b42351e96a31f7129acad30": 148556,
"1b5087b464e39e88c42def39655c2391aaaf684b4c832d6a77ff274b98889f00": 212631,
"f02e086ed4973ef17234aa6cc54b98fbb7a6952ffb16ec4dc4f7d0c72af6400c": 277,
"83b4f1200988e99834c2ae3915346fbf237d128308554b67b5a080d4956bf506": 0
},
"raw_sha256": "dec9db62a52a8bac5f1e2675aecbeb4239f2b1f4fa521db01693c32bdfeef01e",
"sql_bytes": 201634556,
"mode": "rehearsal",
"unique_company_count": null,
"duplicate_suppression": "WHERE duplicate_of IS NULL;retained administrative sightings do not count as separate offers",
"national_coverage": "partial",
"investment_conclusion": "hypothesis only;does not prove demand or viability",
"database": "proactive_supply_delivery_20261028_test|55441",
"before": 361464,
"after": {
"records": 361464,
"distinct_observations": 214299,
"repeated_projections": 147165,
"not_unique_companies": true,
"published": false
},
"idempotent_no_overwrite": true,
"active_existing_business_data_touched": false
},
"baseline_public_tables_unchanged_after_import": 174,
"actual_application_role": "teste_investidor_app",
"RLS_without_actor_rows": 0,
"Gurue": {
"observations": 435,
"retained_repetitions": 237,
"not_unique_companies": true
},
"storage": {
"private_relations_bytes": 344399872,
"database_bytes": 409070739
},
"catalogue_backup_restore": {
"verified": true,
"sha256": "7ebb8791d5871bb4752a3e6e964a398c0f8fc094a10aab0e33aaee202dfc62d3",
"rows": 361464,
"forced_RLS_tables": 2,
"row_checksum": "9f9773492aa45f498201ff791726004a"
},
"import_and_replay_seconds": 67.3371156482026,
"no_application_users_or_dossiers_created": true,
"no_publication": true,
"active_data_writes": 0
},
"private_base_load": {
"at": "2026-10-28T17:14:46.618843+00:00",
"baseline": "569a1cd750f3d2a0b87f130e992e73e070bbd1ab",
"private_schema_created": 2,
"new_migration_registry_rows": 1,
"new_grants": "SELECT only on the two new private tables to the existing application role;no employee assignment or public grant",
"import": {
"candidate": "a022ed9848b41ba342b4209414c2bbf2ebd0a7a3",
"records": 361464,
"source_counts": {
"1ba4c4114b16b407e7746712d00d4f681246bbbc1b42351e96a31f7129acad30": 148556,
"1b5087b464e39e88c42def39655c2391aaaf684b4c832d6a77ff274b98889f00": 212631,
"f02e086ed4973ef17234aa6cc54b98fbb7a6952ffb16ec4dc4f7d0c72af6400c": 277,
"83b4f1200988e99834c2ae3915346fbf237d128308554b67b5a080d4956bf506": 0
},
"raw_sha256": "dec9db62a52a8bac5f1e2675aecbeb4239f2b1f4fa521db01693c32bdfeef01e",
"sql_bytes": 201634556,
"mode": "apply",
"unique_company_count": null,
"duplicate_suppression": "WHERE duplicate_of IS NULL;retained administrative sightings do not count as separate offers",
"national_coverage": "partial",
"investment_conclusion": "hypothesis only;does not prove demand or viability",
"database": "teste_investidor|5432",
"before": 0,
"after": {
"records": 361464,
"distinct_observations": 214299,
"repeated_projections": 147165,
"not_unique_companies": true,
"published": false
},
"idempotent_no_overwrite": true,
"active_existing_business_data_touched": false
},
"schema_contract_delta": "one reviewed migration appended;all90 previous entries unchanged",
"pipeline_script_unchanged": true,
"publication": false,
"code_installation_pending": true,
"backup_dump_sha256": "1a0bc3767062633ba35afe1308c7f29ef441a01dba35551534ed1eef9e8e8509"
},
"capacity": {
"at": "2026-10-28T17:13:59.594789+00:00",
"volumes": [
{
"path": "/var/www/investmoz-homologacao/releases",
"free_bytes": 86519189504,
"free_inodes": 23490190
},
{
"path": "/var/lib/investmoz-deploy",
"free_bytes": 86519189504,
"free_inodes": 23490190
},
{
"path": "/var/backups",
"free_bytes": 86519189504,
"free_inodes": 23490190
},
{
"path": "/tmp",
"free_bytes": 86519189504,
"free_inodes": 23490190
},
{
"path": "/var/lib/docker",
"free_bytes": 86519189504,
"free_inodes": 23490190
}
],
"required_budget_bytes": 6259143420,
"budget_basis": "existing5GiB build guard+twice measured private relations+measured SQL staging;already-created backups/stages included in actual free space",
"backup_sha256": "1a0bc3767062633ba35afe1308c7f29ef441a01dba35551534ed1eef9e8e8509",
"backup_restore_verified": true,
"active_writes": 0
},
"installed_delta": {
"at": "2026-10-28T17:22:03.023596+00:00",
"served_commit": "6d1476936920dc5715d4493b1f8b22a3d51935f4",
"backup_dump_sha256": "1a0bc3767062633ba35afe1308c7f29ef441a01dba35551534ed1eef9e8e8509",
"prior_public_tables_checked": 174,
"prior_domain_rows_preserved": true,
"new_migration_registry_rows": 1,
"operational_delta": {
"cache": {
"before": {
"rows": 111,
"checksum": "a9dc6868205af2190cee2d2787ee8b66"
},
"after": {
"rows": 111,
"checksum": "08c098b3fde0052afa05aae647d18c5f"
}
},
"sessions": {
"before": {
"rows": 7,
"checksum": "ef549836d7a2e0549b1a32f1627c83f4"
},
"after": {
"rows": 8,
"checksum": "4a8b547e0552be4da65bcb97d3851a49"
}
}
},
"persistent_files_and_configuration_identical": 369,
"private_catalogue": {
"observations": 361464,
"distinct_administrative_observations": 214299,
"preserved_repetitions": 147165,
"unmapped_territory": 205608
},
"Gurue": {
"observations": 435,
"repetitions": 237
},
"RLS_without_actor_rows": 0,
"anonymous_query_status": 401,
"public_revision_confirmed": true,
"actual_team_UI_journey": "pending authenticated browser conference;accepted QA is not repeated",
"unique_company_count": null,
"publication": false,
"national_coverage": "partial",
"investment_conclusion": "hypothesis,not proved demand or viability",
"L8": "unchanged,partial"
},
"application_consumer": {
"installed_application_service_read": true,
"existing_actor_passes_existing_profile_authorization": true,
"application_database_identity": {
"database": "teste_investidor",
"role": "teste_investidor_app",
"port": 5432
},
"observations": 435,
"preserved_repetitions_excluded": 237,
"empty_results": "Informação insuficiente nesta base e nestes filtros.",
"source_metadata_present": true,
"no_new_actor_grant_or_record": true,
"read_only": true,
"proof_kind": "technical CLI consumer,not authenticated team browser acceptance"
},
"operational_delta": {
"status": "operational_delta_reconciled",
"comparison_identity": "postgres before/after;isolated restored baseline;no RLS visibility inference",
"cache": "queue:restart;requestthrottle;identical home-sector cached value with refreshed expiry(HomeController remember10min);no deletedcache",
"sessions": "anonymous sessions from delivery user-agent or exactUA/time correlated with nginx public request;deleted sessions individually expired beyond configured lifetime,normal database session garbage collection(config/session lottery2/100)",
"delta": {
"cache": {
"before_rows": 111,
"after_rows": 111,
"changes": [
{
"key_sha256": "7f7dd83f47f5bf404d55e6e9f1367948721579970b195680645e356031a070ff",
"kind": "updated",
"fields": [
"value",
"expiration"
],
"key_pattern": "investemoz-cache-illuminate:queue:restart",
"is_queue_restart_key": true,
"expiration_unchanged": false,
"throttle_timer_pair": false,
"same_value_home_cache_expiry_refresh": false
}
]
},
"sessions": {
"before_rows": 7,
"after_rows": 9,
"changes": [
{
"key_sha256": "5cb21cc6c5f36834d39f2aa929d2272b65358654155858bae027abe4ccdf5c4e",
"kind": "added",
"fields": [
"id",
"ip_address",
"user_agent",
"payload",
"last_activity"
],
"anonymous_user": true,
"delivery_user_agent": true,
"expired_before_comparison": false,
"session_lifetime_minutes": 120,
"anonymous_public_request_logged": true
},
{
"key_sha256": "6fa8f1e07be4cea4d35b9ee67f1e480f35baac9228f33c5161f24e2aac5e33f2",
"kind": "added",
"fields": [
"id",
"ip_address",
"user_agent",
"payload",
"last_activity"
],
"anonymous_user": true,
"delivery_user_agent": true,
"expired_before_comparison": false,
"session_lifetime_minutes": 120,
"anonymous_public_request_logged": true
}
]
}
},
"business_tables_to_confirm_separately": 172,
"active_data_writes_by_comparison": 0,
"restore_network": "none"
},
"installer_and_catalogue_backup": {
"at": "2026-10-28T17:24:41.602671+00:00",
"installed_commit": "6d1476936920dc5715d4493b1f8b22a3d51935f4",
"previous_release_preserved": "/var/www/investmoz-homologacao/releases/569a1cd750f3d2a0b87f130e992e73e070bbd1ab-53a57d6f",
"installer_CI": [
"\u001b[30;42mOK (1 test, 3106 assertions)\u001b[0m",
"✓ built in 31.30s",
"\u001b[30;42mOK (59 tests, 317 assertions)\u001b[0m",
"# tests 1146",
"# pass 1146",
"# fail 0"
],
"accepted_QA_reused": {
"tests": 7,
"assertions": 62,
"Gurue_browser_proof": "accepted earlier;not repeated as a prerequisite"
},
"delivery_delta_test": {
"tests": 1,
"assertions": 2,
"scope": "repeated source sightings cannot inflate saved comparisons"
},
"installed_private_catalogue_backup": {
"path": "/var/backups/investmoz-proactive-supply-delivery-20261028/catalogue-installed.dump",
"bytes": 63461920,
"sha256": "18f71d0ad72aae9645a6101c6388c4d7f481e56ef2d41dc64241245314e85d55",
"read_grants_and_RLS_in_dump": true
},
"existing_pipeline_script_sha256": "adec1c17654f3a8658b83b134f1e75f95391b235738552721906c3236e388604",
"code_branch": "main",
"forced_push": false,
"automatic_publication": false
},
"schema_and_access": "two new private tables,forced RLS,one migration registry row;SELECT only to existing application database role;no employee-role assignments changed;ninety earlier migration hashes preserved and one appended to the existing installer contract;installer program unchanged",
"accepted_proofs_reused": {
"QA_tests": 7,
"QA_assertions": 62,
"Gurue_saved_reload_dossier_chain": "accepted earlier in isolated QA;not falsely presented as new team acceptance"
},
"delivery_delta_test": {
"tests": 1,
"assertions": 2,
"reason": "explicit non-inflation requirement;reject a preserved repeated observation as another saved comparison"
},
"visual_conference": {
"status": "pending",
"known_blocker": "Windows Computer Use could not determine the current browser URL with enough confidence to enforce policy",
"technical_consumer_is_not_team_UI_acceptance": true,
"manual_remaining": "authenticated view of location Gurué→supply query→comparison/hypothesis→existing dossier context;do not copy QA actors/dossiers into active or publish lists"
},
"preservation": "prior domain rows unchanged;369 persistent files/configuration identical;only intended migration row and new private base added;queue restart and2anonymous delivery sessions reconciled separately;no QA user,organisation,opportunity or dossier copied to active",
"publication": false,
"L8": "unchanged,partial;no fiscal code or calculation delta",
"remote_receipts_root": "/var/backups/investmoz-proactive-supply-delivery-20261028",
"local_proofs": "C:\\laragon\\www\\portal-investidor\\outputs\\proactive-supply-delivery-20261028",
"restriction_origins": {
"private_analysis_no_auto_publication_no_false_market_vacancy_no_duplicate_inflation": "explicit Tempo decisions",
"backup_restore_QA_isolation_preservation": "AGENTS.md",
"exact_hashes_temporary_index_database_identity_contract": "technical implementation choices;not new organisational approvals"
}
}
@@ -7101,3 +7101,18 @@ Sete testes dirigidos/62 asserções, TypeScript e compilação QA passaram. As
Actualizados os cinco requisitos existentes `RF-CLU-003`, `MASTER-471012ab-0010`, `M2-d0c06a75-0147`, `M2-d0c06a75-0151` e `MASTER-1f0a4cde-0002`, preservando o restante estado e pendências. Nenhuma matriz ou backlog novo. A entrega activa futura mantém conferência de capacidade/compatibilidade com main, backup/restauro fresco, operação autenticada e delta instalado. Relatório: `docs/investmoz/unification/proactive-existing-supply-qa-20261028.json`.
Complemento final: as 18.423 linhas empresariais sem denominação social também foram conservadas, com essa lacuna explícita e sem reutilizar o nome pessoal do requerente. As 343.041 observações da primeira fotografia permaneceram idênticas; extensão e repetição idempotente atingem 361.464 sem substituir registos, alterar as comparações ou rever as provas aceites. Os exemplares e as fotografias anteriores foram preservados.
## 28/10/2026 — base comparativa instalada pelo Git; conferência visual autenticada pendente
Instalada e servida a revisão **`6d147693`**, que inclui o candidato aceite `a022ed98`, por fast-forward normal em `main`, sem força. A revisão569a1cd7 e os backups anteriores foram preservados. O carregamento privado foi executado em transacção autenticada depois de backup novo, restauro isolado e ensaio idempotente; o instalador Git, as suas guardas e a CI habitual foram conservados. O contrato recebeu apenas o hash da migração nova, mantendo os90 anteriores.
**361.464 observações administrativas não são361.464 empresas únicas.** As147.165 repetições foram conservadas, mas excluídas das contagens/resultados; as214.299 projecções administrativas distintas também não equivalem a empresas únicas. Em Gurué, o serviço instalado recupera435 observações distintas e conserva237 repetições fora dessa contagem. A API também recusa gravar uma repetição como outra comparação: apenas esse delta recebeu teste dirigido1/2asserções. As7provas/62asserções, tipos, compilação e percurso QA aceites foram reutilizados.
A aplicação, com a sua conta real e um actor existente que satisfaz as autorizações anteriores, consultou Gurué e conservou fonte/linha/data/hash. O resultado vazio foi «Informação insuficiente nesta base e nestes filtros.» Sem actor/contexto, a RLS devolveu0; acesso HTTP anónimo recusado401. Isto é conferência técnica do consumidor instalado, **não uma nova aceitação da equipa no navegador**. A conferência visual autenticada permanece pendente por bloqueio do mecanismo Windows de confirmação segura do URL; não pedir nova aceitação das provas QA nem confundir essa pendência com perda da funcionalidade entregue.
Backup fresco de174tabelas públicas e369ficheiros/configuração; restauro sem rede/55441 e os174checksums passaram. As duas tabelas privadas também foram carregadas, repetidas e restauradas no ensaio. Medidos344.399.872bytes para as novas relações;capacidade conferida antes da instalação. No activo, as linhas anteriores foram preservadas e os369ficheiros/configuração ficaram idênticos; o delta esperado é de2tabelas privadas e1registo de migração. Cache queue:restart e2sessões anónimas de conferência foram reconciliados separadamente. Foi criado também backup da base privada já instalada, preservando GRANT/RLS. Não se criaram utilizadores, organizações, oportunidades ou dossiers QA no activo, nem se publicaram as listas.
CI habitual do instalador: PostgreSQL1/3106asserções, Unit59/317, frontend1146aprovados/0falhas, tipos e build31,30s. O script do instalador e as configurações/ficheiros anteriores mantiveram-se; apenas leitura nas duas tabelas novas foi concedida à conta de aplicação existente. Não houve alteração de papéis de funcionários.
**Pendências conservadas:** cobertura nacional parcial,205.608observações sem território canónico único,336só com província,82.864sem designação CAE,113.880com divergências de denominação/identificador e18.423sem denominação social, todas preservadas. A ausência de registos é informação insuficiente. A comparação fundamenta uma hipótese, sem comprovar procura ou viabilidade. O caso/dossier QA anterior mantém-se em QA e não foi transplantado para o activo. **L8 permanece parcial e inalterado.** A actualização continua nos cinco requisitos existentes, sem nova matriz ou backlog. Recibo:`docs/investmoz/unification/proactive-supply-git-delivery-20261028.json`.
File diff suppressed because one or more lines are too long