No-account synthetic demo
Synthetic/demo data boundaryUse this module for synthetic planning data and UI-driven edits only. Make edits to living data by staging proposed Design Mode records, issuing work orders, and reviewing closeout before materialization. Do not enter CEII, SCADA, relay/protection settings, operational telecom access, credentials, or private fiber-route details.
Define these parameters before database integration
Use this checklist whenever you add poles, spans, splices, strands, patch panels, devices, services, imports, or custom objects.
Identity and sourceGive every object a stable identity before it is linked to map layers, modules, traces, or work orders.
object_typerecord_keydisplay_labelsourcevisibilitysynthetic_or_verified_status
  • Use record_key as the durable cross-module ID.
  • Keep source and synthetic/verified status visible on every object.
Lifecycle and reviewTell the database where the record is in the design lifecycle so proposed work does not look like active infrastructure.
statusvalidation_statusapproval_statusreview_notesmaterialization_modeas_built_evidence
  • Use proposed or planned for new design data.
  • Reserve as_built or verified only for reviewed closeout records.
Geometry and map behaviorDefine whether the object appears on the dashboard map and how users should interact with it.
geometry_typegeometry_or_locationmap_styledashboard_layerservice_territoryplacement_notes
  • Use table_only for records like splice rows or strand rows.
  • Use point, line, or polygon geometry for clickable map objects.
Relationship keysCapture the IDs that let the object interact with the rest of the planning database.
parent_ida_end_idz_end_idcable_idstrand_numberssplice_idspatch_panel_iddevice_idcircuit_idwork_order_id
  • Use explicit A-end and Z-end fields for traceable paths.
  • Store IDs for cables, strands, splices, ports, devices, circuits, and work orders instead of notes-only references.
Engineering parametersAdd type-specific fields that make the object useful for planning, validation, and field execution.
asset_typeowner_or_groupcapacityfiber_countport_or_strand_rangeservice_typecriticalityloss_or_latency_target
  • Make the most important fields structured columns.
  • Put vendor-specific or one-off values in JSON/extra attributes only after core fields are defined.
Work, evidence, and continuityDefine what proves the record is ready, installed, tested, or safe to materialize into module data.
required_evidenceacceptance_criteriacloseout_statuscontinuity_trace_idoutage_impact_flagrollback_plan
  • Link proposed changes to work orders before field work.
  • Attach continuity, splice, trace, and evidence references before closeout.
How database objects interact with the rest of the tool
Map dashboard interactionClickable map objects need geometry, display labels, lifecycle status, and a dashboard layer assignment.
service territorydashboard layerwork ordermodule detail page
Backend module interactionModule rows need stable record keys and backend entity mapping so reviewed design records can be materialized safely.
object typemodule tablemodule snapshotimport/export package
Fiber and splice interactionContinuity depends on explicit cable, strand, splice, patch-panel, and endpoint IDs.
fiber cablefiber strandsplice closurepatch panelfiber assignment
Device, service, and circuit interactionServices should connect device ports, LIU/patch-panel ports, strands, splice IDs, and A/Z endpoint records.
devicedevice portcircuitservicefiber trace
Work-order interactionLiving design records become actionable when scope, affected assets, evidence, and closeout states are linked.
source objectaffected assetsfield evidencecloseout reviewas-built record
Backend Product Implementation Guide
Loaded from /api/implementation-guide so the product handoff can be served and versioned by the backend.

Loading backend implementation guide...

Guided database actions
Use these forms to stage common edits without writing records by hand. Each action creates proposed Design Mode records for review.
Insert a pole into a preexisting pole lineCreates the proposed pole plus two split-span records so the old span is not overwritten.
What this stagesNew pole record, split span A-to-new, split span new-to-Z, review checks, and work-order-ready notes.
Insert splice work on a cable/spanCreates a proposed splice point and associated proposed splice rows for engineering review.
What this stagesProposed splice point, proposed row package, affected strands/services, loss/evidence placeholders, and work-order-ready notes.
Stage a safe edit to living dataCreates a proposed change package instead of directly overwriting module or as-built records.
What this stagesDraft change request, target record reference, approval gate, rollback plan, and evidence checklist.
How information gets added
Think of every database edit as a small, reviewable design record.
1. Pick a moduleStart from the page that owns the thing you are designing: poles, fiber, splices, patch panels, devices, services, or work orders.
2. Pick or create an object typeUse a template or Type Designer to define the fields users should fill in. This creates the form.
3. Add a recordFill the generated fields, draw or enter map placement, and save the object as proposed or planned.
4. Link related recordsConnect cable IDs, strand numbers, splice IDs, device ports, LIU ports, services, and work orders.
5. Review and issue workValidate conflicts, reserve resources, issue a work order, and keep evidence attached to the work.
6. Materialize after reviewOnly write supported design records into module tables after engineering review. Synthetic assumptions are not active assets.
Objects you can add
Use these as checklists when adding information to the living database.
Pole or support structureA clickable planning point that can receive fiber, splices, slack, and work orders.
pole IDroad or routestructure typeattachment statusslack loopconnected span IDsnotes
Open module
Fiber span or cable sectionA planned route record that can generate strands and carry services.
cable IDA-endZ-endfiber countfiber typeowner/statusroute geometryassociated splice points
Open module
Fiber strandA reserveable or assignable strand row for service planning.
cable IDstrand numbertube/colorstatusassignment IDA/Z terminationcontinuity notes
Open module
Splice closure and splice rowsA traceable splice matrix that supports resplicing without overwriting existing continuity.
closure IDstructure or LIUfrom cable/strandto cable/strandsplice typelossexisting/proposed status
Open module
Patch panel or LIUA termination inventory where devices and fiber assignments land.
panel IDsubstation/siterackport countconnector typecable IDsport-to-strand map
Open module
Device, port, circuit, or serviceA service assignment that ties devices, LIUs, strands, splices, and work orders together.
device IDdevice typeportservice IDservice typeA/Z endpointsstrand setcriticality
Open module
Step-by-step workflows
Each workflow names the exact information to capture and the UI buttons to use.
Add fiber to a poleUse this when a new ADSS, lateral, or distribution fiber route attaches to a synthetic pole/support.
Open Distribution Network
Buttons to use
GuideCreate related examplesOpen Design recordsNew objectDraw pointSave objectIssue work order
Information to capture
pole_idroad_namestructure_typeattachment_statusconnected_cable_idsslack_loop_lengthwork_order_scope
Steps
  1. Open Dashboard > Guide and create the distribution pole/span examples, or open Database Admin and choose the Distribution pole template.
  2. Create or select the pole record, then fill pole ID, road name, structure type, attachment status, and slack-loop notes.
  3. Create a fiber span record that references the pole as the A-end, Z-end, or pass-through support.
  4. Add cable IDs and strand count to the span, then create or reserve strand records in Fiber Strand Table.
  5. Issue a work order for make-ready, attachment, slack storage, field verification, or closeout evidence.
Review checks
  • Pole has a unique ID.
  • Fiber span references valid endpoints.
  • Slack is marked synthetic/demo.
  • No strand is double-assigned.
Add a span between two polesCreate a line object for a planned cable/span and use route endpoints to connect it to structures.
Open Fiber Cables
Buttons to use
Design ModeLine or route objectDraw lineFinish drawingSave objectMaterialize selected to backend
Information to capture
cable_ida_end_structure_idz_end_structure_idfiber_typefiber_countroute_status
Steps
  1. Use the Type Designer line template or the Fiber span template in Database Admin.
  2. Enter cable ID, A-end structure, Z-end structure, fiber type, fiber count, and install status.
  3. Draw the line on the dashboard or enter route endpoints in Admin.
  4. Add strand rows for the cable after the span is reviewed.
  5. Only materialize the span when it should become a planned module record.
Review checks
  • A-end and Z-end exist.
  • Route geometry is present.
  • Fiber count matches generated strand count.
  • Assumption status is not treated as active fiber.
Resplice an existing serviceKeep the existing splice matrix intact and add proposed rows next to it for engineering review.
Open Splice Matrix
Buttons to use
GuideSplicing and resplicingCreate related examplesOpen Splice MatrixIssue work order
Information to capture
splice_closure_idfrom_cable_idfrom_strandto_cable_idto_strandsplice_typeaffected_service_idsproposed_loss_db
Steps
  1. Select the splice closure or splice point on the map.
  2. Open the interactive splicing diagram or Splice Matrix module.
  3. Copy the affected existing rows into proposed rows instead of overwriting them.
  4. Set splice type, from/to cables, from/to strands, proposed loss, and affected services.
  5. Issue a work order with cutover, test, rollback, and evidence tasks.
Review checks
  • Existing rows remain read-only.
  • Proposed rows are clearly marked.
  • Affected services are linked.
  • Work order includes field test evidence.
Add a device, port, strand, and serviceModel a complete service assignment from endpoint device to LIU, fiber strand, splice path, and opposite endpoint.
Open Devices and Circuits
Buttons to use
Open database adminPatch panel templateDevice endpoint templateService assignmentFiber Trace
Information to capture
a_end_devicez_end_devicea_end_portz_end_porta_end_liu_portz_end_liu_portstrand_numberssplice_idsservice_type
Steps
  1. Create both substations/sites and both LIU or patch-panel records.
  2. Create endpoint devices and ports, then capture the LIU port each device lands on.
  3. Create or select cable and strand records, then reserve a strand pair or strand set.
  4. Attach splice IDs so continuity can be traced end-to-end.
  5. Create a service or circuit record with service type, criticality, endpoint devices, ports, strand IDs, and status.
Review checks
  • Endpoint ports are captured.
  • Strands are reserved or assigned.
  • Splice IDs exist.
  • Continuity and loss are reviewed.
Import data and turn it into editable recordsUse imports for public or synthetic data, then review records before materializing them into module tables.
Open Import / Export
Buttons to use
Import / ExportValidateOpen database adminInstall core schemasCapture module rowsReplay selected snapshots
Information to capture
source_namesource_typevalidation_statusrecord_countobject_typematerialization_modereview_notes
Steps
  1. Import or validate CSV/GeoJSON through the Import / Export module.
  2. Keep public reference data separate from synthetic planning records.
  3. Use Database Admin to create object types for the imported fields you need to edit.
  4. Capture module snapshots when you need to preserve module data in Design Mode.
  5. Replay or materialize only reviewed synthetic/demo records.
Review checks
  • Source is public or synthetic.
  • No CEII/private telecom data is entered.
  • Validation status is captured.
  • Materialization happens after review.
Issue a work order from a design recordTurn any living design record into field or engineering work while keeping it linked to the original database object.
Open Work Orders
Buttons to use
Record browserIssue work orderOpen work orderField closeoutSave changes
Information to capture
record_keywork_typepriorityassigned_scoperequired_evidencecloseout_statusengineering_review
Steps
  1. Select the record in Database Admin or dashboard Design Mode.
  2. Confirm status, affected assets, required evidence, and work scope.
  3. Click Issue work order to generate default review, verification, closeout, and engineering tasks.
  4. Use the work order page for assignment, field notes, evidence, and closeout.
  5. After engineering review, update the design record status to planned, active, or as-built as appropriate.
Review checks
  • Work order links back to source record.
  • Evidence requirements are clear.
  • As-built status is not set before review.
  • Synthetic/data boundary remains visible.
Make edits to living data safelyUse a proposed change package when you need to correct or update an existing module record without directly overwriting reviewed data.
Open Database Admin
Buttons to use
Guide ModuleStage live-data editOpen Design recordsIssue work orderSave changesMaterialize selected to backend
Information to capture
target_moduletarget_record_idchange_typerequested_changerollback_planevidence_requiredapproval_status
Steps
  1. Find the existing record in its module and copy its stable record ID or display key.
  2. Open this Guide module and use Stage live-data edit with the target module, record ID, requested change, rollback plan, and evidence requirements.
  3. Open Dashboard Design Mode or Database Admin to review the proposed change package.
  4. Issue a work order when field verification, photos, redlines, tests, or approvals are needed.
  5. After review and closeout, materialize only the approved synthetic/demo change into the appropriate module table.
Review checks
  • Target record is referenced.
  • Existing values are preserved for rollback.
  • Review and evidence are required.
  • Materialization happens only after approval.
Quick links for adding information
Use these modules when you want to enter, inspect, trace, or assign records.