expanded + expandedFee on the area). Pricing at schedule and edit time uses service-area/find-containing and applies the highest expandedFee among matching expanded areas via serviceAreaCost / expandedAreaPrice. Selected inspector does not change that fee today.inspector-id in modifierPriceCalc.ts / modifierPriceAdjFn.ts, and scheduling passes inspectorIds when an inspector is assigned. Service area is not a condition attribute in templatingData.ts or modifier condition UIs yet.Locked
Open
expandedFee / serviceAreaCost path coexists with modifier-based travel rules (avoid double-charging; decide whether polygon expanded fees are superseded, zeroed, or kept for fallback).inspectorIds are known, or requires another UX pattern.attik-backend/src/util/functions/schedule/modifierPriceCalc.ts — getAttributeValue supports inspector-id today; service area would need to be resolvable at quote/schedule time alongside existing ModifierContextData (inspectorIds, property, required info, equipment).attik-backend/src/models/modifierSchema.ts — conditional modifier shape already stores condition groups; no service-area attribute in evaluation yet.attik-backend/src/models/serviceAreaSchema.ts, attik-backend/src/routes/serviceArea.ts — find-containing returns areas for a property; pricing flows must pass which containing area(s) apply into modifier context, not only a single expandedFee amount.attik-backend/src/util/functions/payroll/payrollContext.ts — applies modifiers with inspectorIds from inspections; travel rules must stay consistent here when admin fees change.attik-backend/src/util/functions/spectora/spectoraJobRequest.ts — serviceAreaCost on service matches; alignment needed if travel moves from polygon fee to modifier-driven amounts.attik-frontend/src/components/conditions/templatingData.ts — add service-area conditional keys; today modifierSpecificConditionalKeys includes inspector-id under the inspector group but no service-area group.attik-frontend/src/components/conditions/ValueConditionInput.tsx, Conditions.tsx — value pickers for new service-area attribute(s).attik-frontend/src/app/tools/settings/services/[id]/Modifier/ConditionalModifier.tsx, ModifierConditions.tsx — conditional modifier builder; extend available groups/keys for service area.attik-frontend/src/util/functions/schedulingHelpers/calculateServicePrices.ts, usePriceCalculation.ts — today adds serviceAreaCost to primary service only; must reconcile with modifier-based travel once rules exist.attik-frontend/src/components/scheduling/NewSchedulingForm.tsx — passes serviceAreaCost: finalServiceArea?.serviceArea?.expandedFee and inspectorIds from scheduledInspector; recalc when inspector or area context changes.attik-frontend/src/app/scheduler/SchedulerContext.tsx — passes expandedFee and inspectorIds from selectedSlotInspectorInfo after slot pick; travel automation must behave correctly in this path.attik-frontend/src/app/tools/inspections/[id]/components/EditChargesModal.tsx — location-based expanded fee today; must stay consistent when inspector changes on an existing job.attik-backend/src/util/functions/schedule/modifierPriceCalc.tsattik-frontend/src/components/conditions/templatingData.tsattik-frontend/src/app/tools/settings/services/[id]/Modifier/ConditionalModifier.tsxattik-frontend/src/util/functions/schedulingHelpers/calculateServicePrices.tsattik-frontend/src/app/scheduler/SchedulerContext.tsxPlease authenticate to join the conversation.
Planned
Main App
About 14 hours ago
Linear
Get notified by email when there are changes.
Planned
Main App
About 14 hours ago
Linear
Get notified by email when there are changes.