fix(web): render operational map as GPS points
DH V2 CI / API · typecheck, tests, build (push) Successful in 40s
Production dependency audit / API · production dependencies (push) Successful in 9s
Production dependency audit / WEB · production dependencies (push) Successful in 9s
DH V2 CI / WEB · typecheck, build (push) Successful in 1m38s
DH V2 CI / Docker / migrations / production images (push) Successful in 1m55s
DH V2 CI / Promote verified main to deploy (push) Successful in 4s
Android CI / RC / Android · lint, tests, debug APK, release compile (push) Successful in 4m24s

This commit is contained in:
ChatGPT DH
2026-09-16 08:55:54 -03:00
parent a414d0ed36
commit fa6ba7f31e
14 changed files with 173 additions and 219 deletions
+3 -3
View File
@@ -4,9 +4,9 @@ import { readFileSync } from 'node:fs';
import { resolve } from 'node:path';
import { API_PHASE, API_VERSION } from '../../src/version';
test('health metadata reports the current F6.15 release', () => {
assert.equal(API_PHASE, 'F6.15');
test('health metadata reports the current F6.16 release', () => {
assert.equal(API_PHASE, 'F6.16');
const pkg = JSON.parse(readFileSync(resolve(process.cwd(), 'package.json'), 'utf8')) as { version: string };
assert.equal(API_VERSION, pkg.version);
assert.equal(API_VERSION, '0.29.0-15');
assert.equal(API_VERSION, '0.29.0-16');
});
@@ -13,7 +13,7 @@ test('F6.1 presentation metadata keeps the visible WEB version aligned with pack
const visibleVersion = version.match(/APP_VERSION\s*=\s*'([^']+)'/)?.[1];
assert.equal(visibleVersion, pkg.version);
assert.match(version, /APP_PHASE\s*=\s*'F6\.15/);
assert.match(version, /APP_PHASE\s*=\s*'F6\.16/);
});
test('F6.1 presentation keeps Relevamientos retired from WEB navigation and routes', () => {
@@ -14,7 +14,7 @@ test('F6.12 uses standard GeoJSON names in WEB and converts only at the API boun
assert.match(client, /type: 'LineString'/);
assert.match(client, /type: 'Polygon'/);
assert.match(client, /geometryPayload/);
assert.match(map, /feature\.geometry\.type === 'Point'/);
assert.match(map, /geometry\.type\.toLowerCase\(\) !== 'point'/);
assert.match(editor, /setType\(value\.geometryType\)/);
});
+13 -7
View File
@@ -37,7 +37,7 @@ test('F6.15 Acta uses real report workflow state instead of legacy generated PDF
assert.match(list, /act\.report\.status === 'OFFICIALIZED'/);
});
test('F6.15 map exposes filtered operational layers without inventing coordinates', () => {
test('F6.16 map renders operational locations as GPS point markers without filters', () => {
const controller = api('src/asset-master/asset-geometries.controller.ts');
const service = api('src/asset-master/asset-geometries.service.ts');
const page = web('pages/MapPage.tsx');
@@ -51,10 +51,16 @@ test('F6.15 map exposes filtered operational layers without inventing coordinate
assert.match(service, new RegExp(`'${kind}'::text`));
assert.match(page, new RegExp(`${kind}:`));
}
assert.match(page, /Buscar Yacimiento, Empresa, Acta, Hallazgo/);
assert.match(page, /sourceGeometries/);
assert.match(map, /yacimiento-points/);
assert.match(map, /company-points/);
assert.match(map, /act-points/);
assert.match(map, /finding-points/);
assert.match(page, /punto\{data\.meta\.count === 1 \? '' : 's'\} GPS/);
assert.match(page, /feature\.geometry\.type\.toLowerCase\(\) === 'point'/);
assert.match(page, /map-legend/);
assert.doesNotMatch(page, /SearchableSelect/);
assert.doesNotMatch(page, /mapSearch/);
assert.doesNotMatch(page, /toggleLayer/);
assert.match(map, /new Marker/);
assert.match(map, /pointCoordinates/);
assert.match(map, /visualOffsets/);
assert.match(map, /fitToPoints/);
assert.doesNotMatch(map, /addSource\('assets'/);
assert.doesNotMatch(map, /addLayer\(/);
});