[general]
name=Seranta - FTTH Design Assistant
qgisMinimumVersion=3.22
qgisMaximumVersion=4.99
version=3.14.0
author=Joseph Edward Timothy Siahaan
email=edwardtimoo@gmail.com
description=One-folder FTTH/GPON design tools for QGIS: survey QC, design input, FDT/FAT allocation and design package QC.
about=Seranta helps FTTH/GPON access-network designers prepare and review designs inside QGIS. Each of its four tools needs only a folder: (1) checks the field survey and prepares the input for automatic design software, (2) estimates FAT and FDT allocation with a link budget, (3) produces post-design code and closure tables, and (4) runs a rule-based QC of the final design package. Every rule reports PASS, ERROR, WARNING, INFO or UNVERIFIED, findings can be browsed on the map, and thresholds are kept in editable profiles. No extra Python packages or internet connection needed. Reports are written in Indonesian. Licence GPL v3 or later with section 7 terms (author attribution kept, modified versions renamed and marked); official releases are digitally signed by the author (release key fingerprint 92C4-D078-D1FC-1C5B; any other key is not an official Seranta release).
category=Vector
icon=icon.png
tags=ftth,gpon,fiber,fibre optic,fttx,telecommunication,network design,autodesign,homepass,pole,quality control,qc,processing,kmz
homepage=https://github.com/jetstimo/seranta
tracker=https://github.com/jetstimo/seranta/issues
repository=https://github.com/jetstimo/seranta
hasProcessingProvider=yes
experimental=False
deprecated=False
server=False
changelog=3.14.0 Files are recognised by their CONTENT, not only their names: the homepass spreadsheet is the one with LATITUDE/LONGITUDE header columns even when its name has no HPDB or is misspelt (HPBD, HDPB, HOMEPAS); backup copies (OLD, LAMA, BACKUP, (1)) are skipped; the cluster KMZ is the one holding homepass points or poles and routes, and a KMZ of another cluster copied into the folder is not picked when the names show it; renamed reference files (Design Lite, service boundaries, attributes workbook) and TSSR/permit documents with misspelt names are found from their content. One folder holding several clusters (many KMZ files, or many homepass spreadsheets with their KMZ and documents) is split automatically into one folder per cluster and checked as neighbouring clusters, instead of stopping with 'more than one file'. Review remarks are now SIMPLE by default: short plain sentences such as 'there are homepasses more than 50 m from a pole, there are poles duplicated with cluster X, please check everything again' (Indonesian); the detailed remarks stay in REMARKS.txt and the batch CSV. Each cluster states automatically whether it is designed as one network with / next to other clusters or stands alone. Company-specific wording removed. 3.13.0 Route integrity - the KMZ route must be one complete cable network carried by poles (author revision 6 Nov 2026). Route parts without poles are now measured ALONG THE ROUTE and judged with the same span limit (a span is the distance between consecutive supporting points, USDA RUS Bulletin 1751F-630): a route drawn with no pole at all, a route end far from the last pole (e.g. 72 m straight line = 237 m of cable), and two poles joined through a junction without a pole; closed loops whose vertices are all off-pole are now traced. New checks: route part not connected to the rest of the cluster network (ITU-T G.984.1: every part must be fed from the FDT), lines crossing or touching without a shared vertex (a line end or vertex on another line is a junction without a pole; splice closures belong on poles, Fiber Optic Association), and lines drawn twice / back and forth (cable length counted twice in the BOQ). Route ends and junctions without a pole now appear in the 255-character remarks as reject reasons. Spans re-checked with sibling poles list every part above the limit. A cluster KMZ without poles or without a route gets a Reject remark in the batch summary instead of only 'failed'. All one-PIC rules (sibling poles, sibling routes) apply to the new checks. Also checked: whether the cable network reaches the colocation FDT entry pole (homepasses on route parts not connected to it), and new poles or route stretches outside the cluster boundary (notes when inside a one-PIC sibling boundary). Profile switch route_integrity; switched off, results are identical to 3.12.0. 3.12.0 One-PIC networks: the cable route of a cluster may be carried by poles of a sibling cluster (same funnel / parent area) - a span is the distance between consecutive supporting points (USDA RUS Bulletin 1751F-630; Corning AEN 14), so sibling poles on the route (<= 3 m, the rule for own poles) split long spans and the longest remaining span is judged again (e.g. 240 m -> 53 m over five sibling poles); bends, route ends and junctions at a sibling pole (<= snap distance) are notes with a reminder to guy / dead-end that pole (USDA RUS 1751F-650). A sibling pole counts when it lies within 5 m of its own cluster's route (phone GPS accuracy, GPS.gov); the same 5 m now applies to homepasses served by sibling poles. If this part fails, findings are restored and the core check is unaffected. New profile switch cross_1pic_route_support; with all one-PIC switches off results equal 3.10.0. Every rule now names its source in DASAR_ATURAN.md and the profile. 3.11.0 One-PIC / neighbouring clusters reviewed as one area (author revision 5 Nov 2026): boundaries of neighbouring areas (RT/RW/lingkungan) designed by one PIC or lying side by side may overlap - inside the same cluster funnel (or, without reference data, the same parent area: identical BAKP/TSSR or parent boundary) such overlaps and homepasses inside a sibling boundary are notes, no longer reject reasons; a boundary reaching into ANOTHER funnel is still an error, marked LINTAS FUNNEL. A homepass more than 50 m from the poles of its own cluster is no longer rejected when a pole of a sibling cluster in the same area, on that cluster's cable route, is within 50 m: the finding becomes a note naming that pole, with the design advice (drop from the shared pole or move the homepass); homepasses with no pole in reach in any cluster stay rejected. Route-based access warnings keep their warning and name the sibling pole as an alternative. Group and strand summaries separate accepted overlaps from overlaps to fix and count homepasses served by sibling poles. Both rules can be switched off in the profile (cross_1pic_overlap_ok, cross_1pic_pole_cover); switched off, results are identical to 3.10.0. 3.10.0 Smarter one-PIC / neighbouring-cluster review (review of the Jambi Suka Karya strand, 13 RT clusters): clusters from one parent area (same cluster funnel, identical BAKP or TSSR file) are reported as one STRAND above the one-PIC groups (REKAP_STRAND, with strand remarks), so a strand split into separate sub-networks is still reviewed as one document package; a TSSR shared by several clusters is reported once as a strand TSSR instead of "TSSR n HP vs HPDB" in every cluster; group summaries now list every boundary overlap with the homepass rows inside it, count pairs that only touch separately, give one conclusion remark per group (255 characters), compare the FDT/colocation plan of all members of one network (different FDTs or a new FDT in one network = not unified; two members on one FDT checked against its capacity) and show the remaining FDT headroom; shared poles say whether they are new poles (double BOQ) or existing poles recorded twice; shared cable length is the same seen from both clusters. New checks: mixed CLUSTER_NAME in one HPDB (e.g. homepasses moved from a neighbouring cluster without a new label), self-intersecting boundary polygon, homepass count in file names not updated after revision, and swapped area columns in other HPDB sheets (no longer matched to a far-away FINDIM area). Remarks: homepasses inside a neighbour boundary that all lie in the overlap are written once with the overlap (both clusters now give the same rows), overlaps are sorted by size and shortened in three steps, and a long reason no longer pushes the next reject reason out of the 255 characters. Tested on 5,200 combinations of real findings: review status never changes and other remarks are identical to 3.9.5. 3.9.5 New checks from the review of four clusters (Jambi, Tegal, Minahasa, Cianjur): the TSSR survey report is cross-checked with the HPDB (cluster ID, number of homepasses, sub-district); areas the vendor marked as having no permit or no space ("TIDAK DAPAT IZIN", "NO SPACE") in the BOUNDARY folder are no longer counted as coverage, and homepasses, poles or cable inside them are reported; a homepass whose evidence photo with the same label lies far away is reported as a likely wrong coordinate, and photographed houses missing from the HPDB are listed; invisible characters in HPDB cells are reported; scanned permit documents (BAKP) get an explicit reminder that handwriting (compensation, ticks, cluster ID) must be read by hand; neighbouring removable poles warn when they must not be removed together; vendor name also taken from the cluster folder. Existing checks and results are unchanged. 3.9.4 Satellite base map without the "Map data not yet available" tiles: Esri has no imagery beyond a certain zoom in many places (Tomohon: zoom 18), and its server then sends a placeholder picture. Seranta now asks Esri once per area which zoom really exists (small background request, QGIS never waits), uses that zoom and enlarges it smoothly (bilinear) when you zoom in further; the QGIS network cache is raised to 1 GB so tiles already seen appear at once. Same fix in the HTML report maps. No change in analysis results. 3.9.3 Stronger release protection: every integrity status shows the release key fingerprint (official 92C4-D078-D1FC-1C5B, also published on this page and on GitHub); a copy whose signing key was replaced is reported as UNOFFICIAL, also when only one of the key copies was changed; the About dialog can verify the installed copy online against the official release list in the author's GitHub repository. No change in analysis results. 3.9.2 Generic unit labels (RUKO-1, TOKO 2, KIOS A3) are treated as weak identifiers: the same label in two clusters is an ERROR only within 5 m; at 5-25 m it is a WARNING to check on imagery, with a note whether the two unit rows overlap or continue each other (Tomohon: RUKO-1 L3 vs Ruko-1 L7, 17 m). Names, survey numbers and house numbers are checked exactly as before. Satellite base map: one Esri World Imagery layer at the bottom of the QGIS layer list when QC results are loaded, reused for every cluster (choice Satellite / Street map / None in the QC Navigator); HTML report maps open on satellite imagery when online. Long finding texts are cut cleanly in the QC shapefiles. 3.9.1 Release package fix: files in the zip no longer carry executable permissions (plugins.qgis.org File Permissions check now passes). No change in analysis results. 3.9.0 Survey QC understands a parent area split into clusters: a boundary polygon copied unchanged into several cluster KMZs is reported once as the parent boundary, group summaries name the parent area and the group type (one network / one-PIC survey package / neighbouring clusters), short cluster names keep the RT/RW part, and shared poles still fit in the 255-character remarks. Licence GPL v3 or later with section 7 terms; official releases are digitally signed (Ed25519) and every report states whether the copy is an original signed release. 3.8.2 One combined HTML for a one-PIC/adjacent group (REKAP_GRUP_1PIC_*.html) and for a whole batch (REKAP_BATCH_*.html, also for unrelated clusters): a tab per cluster holding that cluster's full interactive report (map, rule cards, filters, finding pictures), and on the first tab the remarks of every cluster with an extra-remarks box and status choice per cluster (final remarks with 255-character counter, kept in the browser), a group note, every cluster's standards and findings, and one Word download (.docx made in the browser, offline) plus a CSV of the final remarks. Cross-cluster check now works in KMZ-only runs and for a '1 PIC' KMZ split into areas: neighbouring areas are compared (shared poles, houses in another boundary, overlapping boundaries; shared cable routes are reported as context); boundary polygons placed directly in an area folder are read; survey labels ('? -37') are checked for duplicates in KMZ-only runs, and survey numbering that restarts per area is no longer read as a cross-cluster duplicate; 'EVIDEN' folders are recognised and general photo folders are reported; the batch summary separates the run status from the review status; a house already listed as too far from a pole is not repeated as an access finding; permit PDFs saved with compressed object streams (CamScanner) are read page by page and an other-cluster ID in the PDF title is flagged; the vendor name no longer carries the file extension; a cluster ID missing from an old FINDIM (over 90 days) is a note, not a reject reason. Runs with an HPDB keep their results, except where the new label rules apply. 3.8.1 Survey QC (tool 1) also runs when a cluster folder has no homepass spreadsheet (HPDB): the HP points of the KMZ are used and only the KMZ checks are made (poles, routes, spans, house distance and access, duplicates, boundary, cross-cluster), and a KMZ holding several areas (one '1 PIC' KMZ with several neighbourhoods) is checked area by area; HPDB checks, BAKP, HP.csv and the import manifest are skipped, with a clear warning in the log, report and remarks. Runs with an HPDB are unchanged. 3.8.0 FAT Coverage membership and route distance for 'house too far from FAT', road-side poles count for spans, idle NP poles with coordinates, house access check, faster QC. Full history: https://github.com/jetstimo/seranta/blob/main/CHANGELOG.md
