Skip to content

Application business rules

This page is the complete catalog of business rules that govern this application's behavior. A rule appears here when it is enforced on a code path this application can actually execute — regardless of where the enforcing code lives: the application project itself, a screen code-behind, or a consumed library.

Rules defined in a consumed library but never reached by this application are out of scope and are listed only in Rules not reachable from this application.

Rule scope and coverage

Reachability was determined by tracing outward from this application's entry points — screen event handlers, application workflow steps, and application startup/infrastructure code — through the documented delegations in the application, screen, and library analyses available in this repository.

Category Section Count
Application-level (cross-cutting) Application-level business rules 6
Screen-enforced Screen business rules 6
Library-defined, in scope Library business rules in scope 15
Total in scope 27
Library-defined, not reachable Rules not reachable from this application 159

Rule index

Rule ID Statement Origin Reached from
BR-APP-001 LegalMaintenance applies a shared LNView-based view-only mode across maintenance screens and AJAX-backed manager flows. Application Attorney profile maintenance, Hearing location maintenance, Inline AJAX grid edit via DataHelper.aspx
BR-APP-002 Attorney assignment composes claim-context confidentiality with legal-manager access checks. Application Attorney-to-claim assignment
BR-APP-003 Saving attorney assignments can fan out into task creation and calendar synchronization. Application Attorney-to-claim assignment
BR-APP-004 Environment classification governs real versus test side effects. Application Attorney-to-claim assignment, Batch job submission (Appworx)
BR-APP-005 Print preview depends on a shared package and metadata contract. Application Print preview and document distribution, Print Preview
BR-APP-006 Startup always routes into attorney profile maintenance. Application Legal Maintenance Start Page
BR-SCR-001 Attorney schedule view requires a specific attorney selection. Attorney Tables Attorney Tables
BR-SCR-002 Attorney profile insert requires an unprofiled attorney. Attorney Profile Attorney Profile
BR-SCR-003 Legal Person switches behavior by selected maintenance view. Legal Person Legal Person
BR-SCR-004 Other Parties always applies the selected firm-type filter. Other Parties Other Parties
BR-SCR-005 Hearing Location writes only dirty, valid collections. Hearing Locations Hearing Locations
BR-SCR-006 Rotation print is available only through the rotation screen workflow. Out of Town Rotations Out of Town Rotations
BR-APP-001 An application manager cannot be created without a security principal. SAIF.Application Attorney profile maintenance
BR-APP-004 AD resource authorization is cached per instance. SAIF.Application Attorney profile maintenance, Attorney Tables
BR-CLM-003 Claim context changes run retrieval, then security, then downstream retrieve logic. SAIF.Application.Claim Attorney-to-claim assignment
BR-CLM-006 Worker-conflict claims are denied unless conflict authority or an override exists. SAIF.Application.Claim Attorney-to-claim assignment
BR-CLM-012 Only the conflict dimension auto-blocks in the base claim manager. SAIF.Application.Claim Attorney-to-claim assignment
BR-001 Legal-admin members bypass confidential-claim restrictions. SAIF.Application.Claim.Legal Attorney-to-claim assignment
BR-002 Worker-conflict claims require legal conflict access, admin access, or override. SAIF.Application.Claim.Legal Attorney-to-claim assignment
BR-003 Exposure claims require legal exposure access, admin access, or override. SAIF.Application.Claim.Legal Attorney-to-claim assignment
BR-006 LNView is surfaced as the read-only capability for screens. SAIF.Application.Claim.Legal Attorney profile maintenance, Attorney Tables
BR-030 Saving attorney tables persists six child collections in a fixed order within one write. SAIF.Application.Claim.Legal Attorney Tables, Inline AJAX grid edit via DataHelper.aspx
BR-031 Lookup code lists are cached in-process for eight hours. SAIF.Application.Claim.Legal Attorney profile maintenance, Hearing location maintenance
BR-050 New hearing locations default flags and audit fields. SAIF.Application.Claim.Legal Hearing location maintenance
BR-060 Attorney profiles are active only while expiration has not passed. SAIF.Application.Claim.Legal Attorney profile maintenance
BR-ASG-001 Assignment processing sets legal case evaluation due dates to Today.NextWorkDay(18). SAIF.Business.Claim.Legal Attorney-to-claim assignment
BR-ASG-002 Assignment result codes CA and CAC trigger downstream side effects. SAIF.Business.Claim.Legal Attorney-to-claim assignment
BR-CT-03 Generated claim-task assignees must hold task-update access. SAIF.Business.Tasks.Claim Attorney-to-claim assignment
BR-CT-10 Generated claim tasks default to the Manage Claims category. SAIF.Business.Tasks.Claim Attorney-to-claim assignment
BR-PRT-008 Print rendering requires XML content and a report package. SAIF.Services.Printing Print preview and document distribution
BR-IMG-010 Imaging metadata uses a fixed wire contract. SAIF.Services.Imaging.Import Print preview and document distribution
BR-003 Appworx submissions send only populated argument slots. SAIF.Services.Appworx Batch job submission (Appworx)
BR-004 Appworx submissions always send module, requestor, and printer values. SAIF.Services.Appworx Batch job submission (Appworx)

Application-level business rules

BR-APP-001 AD-group-gated view-only mode controls toolbar edits

Field Value
Statement LegalMaintenance applies a shared LNView-based view-only mode across maintenance screens and AJAX-backed manager flows.
Trigger A user opens a maintenance screen or posts a maintenance-grid request backed by a LegalManagerBase-derived manager.
Enforcement Screen Page_Load handlers disable Insert/Save/Delete when Manager.IsInViewOnly is true, while the same manager family also backs DataHelper.aspx AJAX mutations.
Outcome Standard screens demote LNView users to read-only toolbar behavior, but the same manager family remains reachable through grid-driven mutation paths.
Origin Application
Enforcing libraries SAIF.Application, SAIF.Application.Claim.Legal
Reached from Attorney profile maintenance, Hearing location maintenance, Inline AJAX grid edit via DataHelper.aspx, Attorney Profile, Attorney Tables
Source docs/application/operations/attorney-profile-maintenance.md, docs/application/operations/hearing-location-maintenance.md, docs/application/operations/inline-ajax-grid-edit.md, docs/screens/frm-attorney-profile.md, docs/screens/frm-attorney-assignment.md

Field Value
Statement Attorney assignment composes claim-context confidentiality with legal-manager access checks before assignment data is read or written.
Trigger A user selects a claim or worker context on the attorney assignment workflow.
Enforcement ClaimAppManager.ChangeContext() runs claim retrieval and security checks, then LegalManagerBase.OnRetrieve applies legal admin/conflict/exposure gating against the same claim context.
Outcome Assignment workflows can proceed only through claim contexts that survive both claim-level and legal-level confidentiality evaluation.
Origin Application
Enforcing libraries SAIF.Application.Claim, SAIF.Application.Claim.Legal
Reached from Attorney-to-claim assignment
Tables ATTORNEY_WORKER_ASSIGNMENT, ATTORNEY_CONFLICT
Source docs/application/operations/attorney-to-claim-assignment.md, docs/application/security-authorization.md

BR-APP-003 Assignment save fan-out includes task and calendar side effects

Field Value
Statement Saving attorney assignments can fan out from UI persistence into task creation and calendar synchronization.
Trigger A user saves attorney assignment collections from the attorney assignment screen.
Enforcement The screen delegates to Controller.Write, the application-layer assignment manager runs the assignment process, and downstream business/task libraries raise claim tasks and optionally sync Exchange calendars.
Outcome One save can update assignment tables, generate a claim task, and invoke attorney calendar side effects.
Origin Application
Enforcing libraries SAIF.Application.Claim.Legal, SAIF.Business.Claim.Legal, SAIF.Business.Tasks.Claim
Reached from Attorney-to-claim assignment, Attorney Tables
Tables ATTORNEY_WORKER_ASSIGNMENT, ATTORNEY_CONFLICT, TASK
Source docs/application/operations/attorney-to-claim-assignment.md, docs/screens/frm-attorney-assignment.md

BR-APP-004 Environment classification governs real vs test side effects

Field Value
Statement Environment classification determines whether assignment and batch workflows target real or test side effects.
Trigger Assignment processing decides whether to run in testing mode, or an Appworx batch request is submitted.
Enforcement AppGlobal.EnvironmentService.GetApplicationEnvironment() drives the attorney-assignment testing flag and the Appworx target database selection.
Outcome Non-production environments should remain on test-safe side effects; a misclassified environment can route to production-affecting integrations.*
Origin Application
Enforcing libraries SAIF.Business.Claim.Legal, SAIF.Services.Appworx
Reached from Attorney-to-claim assignment, Batch job submission (Appworx)
Tables JOB_QUEUE
Source docs/application/operations/attorney-to-claim-assignment.md, docs/application/operations/batch-job-submission-appworx.md, docs/application/dependencies.md

BR-APP-005 Print preview depends on a shared package and metadata contract

Field Value
Statement Print preview depends on a caller-seeded package/XML contract shared with the printing and imaging libraries.
Trigger A maintenance screen invokes print preview.
Enforcement PrintReport(...) stores package/XML state, frmPrintPreview.aspx calls clsPrint.previewDocument(...), and the printing path serializes imaging metadata into the fixed clsImageImport.ToString() wire format.
Outcome Print preview succeeds only when callers prepare a valid package plus XML/metadata payload that downstream services can interpret.
Origin Application
Enforcing libraries SAIF.Services.Printing, SAIF.Services.Imaging.Import
Reached from Print preview and document distribution, Print Preview, Out of Town Rotations
Source docs/application/operations/print-preview-and-document-distribution.md, docs/screens/frm-print-preview.md, docs/screens/frm-rotation.md

BR-APP-006 Startup always routes into attorney profile maintenance

Field Value
Statement Application startup always routes users from Default.aspx into attorney profile maintenance.
Trigger The browser requests the application's default page.
Enforcement Default.aspx unconditionally calls Controller.Navigate(ApplicationName, "frmAttorneyProfile.aspx").
Outcome The only documented startup path enters the attorney profile workflow.
Origin Application
Enforcing libraries SAIF.Application.Claim.Legal
Reached from Legal Maintenance Start Page
Source docs/screens/default.md

Screen business rules

BR-SCR-001 Attorney schedule view requires a specific attorney selection

Field Value
Statement The attorney schedule grid cannot be loaded when the filter remains ALL.
Trigger A user selects attorney_schedule in ddlTableType and tries to configure the view.
Enforcement ConfigureView() on frmAttorneyAssignment.aspx.vb shows an error and exits when ddlAttorney.SelectedValue = "ALL" for the schedule table.
Outcome Schedule data is withheld until the user narrows the view to one attorney.
Origin Attorney Tables
Reached from Attorney Tables
Source docs/screens/frm-attorney-assignment.md

BR-SCR-002 Attorney profile insert requires an unprofiled attorney

Field Value
Statement Attorney profile insert is blocked when no unprofiled attorneys remain.
Trigger A user clicks Insert on the Attorney Profile screen.
Enforcement Insert() checks Manager.NewAttornies.Count and stops with an error when the count is zero.
Outcome Users cannot create duplicate attorney-profile rows for already-profiled attorneys.
Origin Attorney Profile
Reached from Attorney Profile
Source docs/screens/frm-attorney-profile.md

Field Value
Statement Legal Person changes editable grids and expired-row behavior based on the selected maintenance view.
Trigger A user changes ddlPersonType or toggles chkExpired.
Enforcement ActiveGrid, FormatWebGridColumns, and ddlPersonType_SelectedIndexChanged switch between dgPerson and dgPersonType, while chkExpired_CheckedChanged controls expired-row inclusion.
Outcome The same screen enforces distinct maintenance behavior for legal-person rows versus legal-person-type rows.
Origin Legal Person
Reached from Legal Person
Source docs/screens/frm-legal-person.md

BR-SCR-004 Other Parties always applies the selected firm-type filter

Field Value
Statement Other Parties always rebinds data through the currently selected firm-type filter.
Trigger The screen loads, the user clicks Retrieve, or the screen refreshes after save.
Enforcement BindData copies ddlFirmType into Manager.FirmFilter, and successful save forces a filtered reload.
Outcome Users always edit the subset of other-firm rows defined by the current firm-type selection.
Origin Other Parties
Reached from Other Parties
Source docs/screens/frm-other-firms.md

BR-SCR-005 Hearing Location screen writes only dirty, valid collections

Field Value
Statement Hearing Locations saves or deletes only when the bound collection is valid, and save also requires dirty rows.
Trigger A user clicks Save or Delete on the Hearing Locations screen.
Enforcement Save checks Manager.HearingLocationCol.IsDirty and IsValid; Delete also gates the operation on collection validity before calling Manager.DeleteLocation.
Outcome Invalid collections surface messages instead of persisting or deleting hearing-location rows.
Origin Hearing Locations
Reached from Hearing Locations
Source docs/screens/frm-hearing-location.md

BR-SCR-006 Rotation print is available only through the rotation screen workflow

Field Value
Statement Rotation reporting is emitted only from the rotation screen's Print action.
Trigger A user clicks Print on the rotation screen.
Enforcement SAIFMenuTop.PrintButton runs Legal_Maint_RotationReport and navigates to print preview with the prepared report context.
Outcome Rotation report output is available only when invoked from the screen's explicit print workflow.
Origin Out of Town Rotations
Reached from Out of Town Rotations
Source docs/screens/frm-rotation.md

Library business rules in scope

BR-APP-001 Manager construction requires a security principal

Field Value
Statement An application manager cannot be created without a security principal.
Trigger LegalMaintenance creates any manager instance for a screen or workflow.
Enforcement AppManagerBase.New(inSecurityPrincipal As clsSecurityPrincipal) is the only protected constructor path available to derived managers.
Outcome Every reachable manager carries request identity for authorization and DB client identity.
Origin SAIF.Application — AppManagerBase
Reached from Attorney profile maintenance, Hearing location maintenance, Attorney Tables
Source docs/libraries/saif-application/business-rules.md, docs/application/operations/attorney-profile-maintenance.md

BR-APP-004 AD resource authorization is cached per instance

Field Value
Statement An AD resource authorization decision is evaluated once per UserAccess instance and reused thereafter.
Trigger A manager checks LNView, LNAdmin, LNConflict, or another resource during one request lifecycle.
Enforcement UserAccess.HasAccess caches the resource decision before reusing it on later checks.
Outcome Repeat authorization checks within one manager instance reuse the same result instead of re-querying AD.
Origin SAIF.Application — UserAccess
Reached from Attorney profile maintenance, Hearing location maintenance, Attorney Tables
Source docs/libraries/saif-application/business-rules.md, docs/application/security-authorization.md

BR-CLM-003 Fixed context-change pipeline order

Field Value
Statement Every context change runs claim retrieval, then the security evaluation, then the screen retrieval — in that order.
Trigger Attorney assignment sets or changes claim context.
Enforcement ChangeContext() in ClaimAppManager calls OnContextChanged() → OnCheckSecurity() → OnRetrieve().
Outcome Claim security is always evaluated against loaded claim data before legal assignment retrieval logic runs.
Origin SAIF.Application.Claim — ClaimAppManager
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-application-claim/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-CLM-006 Conflict-claim denial with override

Field Value
Statement A user without conflict-claim authority is denied all access to a worker-conflict claim unless a per-claim security override has been granted to that user.
Trigger Attorney assignment evaluates a claim context flagged as worker conflict.
Enforcement ClaimAppManager.OnCheckSecurity() calls MarkNoAccess() when ClaimSecurity.ConflictAccess is false and no override exists.
Outcome Worker-conflict claims are blocked before attorney-assignment data is exposed unless an explicit override restores access.
Origin SAIF.Application.Claim — ClaimAppManager
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-application-claim/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-CLM-012 Only conflict dimension auto-blocks

Field Value
Statement Of the four claim-confidentiality dimensions, only the conflict dimension blocks access automatically.
Trigger Attorney assignment runs the claim security check for a selected claim context.
Enforcement ClaimAppManager.OnCheckSecurity() tests only ClaimSecurity.ConflictAccess for automatic denial.
Outcome Exposure, secure-claim, and health-issue results remain advisory until legal-layer consumers enforce them.
Origin SAIF.Application.Claim — ClaimAppManager
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-application-claim/business-rules.md, docs/application/security-authorization.md

Field Value
Statement Members of the legal admin AD group bypass all confidential-claim restrictions.
Trigger A legal manager retrieves assignment data for a claim-context workflow.
Enforcement LegalManagerBase.OnRetrieve grants access when IsInAdminGroup is true.
Outcome Legal-admin users bypass downstream conflict and exposure claim restrictions during legal retrieval.
Origin SAIF.Application.Claim.Legal — LegalManagerBase
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-002 A worker-conflict claim

Field Value
Statement A worker-conflict claim may be viewed only with legal conflict access (or admin, or a security override).
Trigger A selected attorney-assignment claim context is marked as worker conflict.
Enforcement LegalManagerBase.OnRetrieve checks ClaimData.IsWorkerConflict and blocks access when legal conflict access is absent and no bypass applies.
Outcome Confidential worker-conflict claims are hidden from non-entitled legal users in the assignment flow.
Origin SAIF.Application.Claim.Legal — LegalManagerBase
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-003 An exposure claim

Field Value
Statement An exposure claim may be viewed only with legal exposure access (or admin, or a security override).
Trigger A selected attorney-assignment claim context is marked as exposure.
Enforcement LegalManagerBase.OnRetrieve checks ClaimData.IsExposure and blocks access when legal exposure access is absent and no bypass applies.
Outcome Exposure claims are withheld from non-entitled legal users during the assignment workflow.
Origin SAIF.Application.Claim.Legal — LegalManagerBase
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-006 The LNView resource is surfaced as a Boolean capability for read-only workflows

Field Value
Statement The LNView resource is surfaced as a Boolean capability for read-only workflows.
Trigger A LegalMaintenance screen decides whether to suppress write actions.
Enforcement LegalManagerBase.IsInViewOnly exposes the LNView authorization result to screen code.
Outcome Maintenance screens can disable toolbar editing actions for read-only users.
Origin SAIF.Application.Claim.Legal — LegalManagerBase
Reached from Attorney profile maintenance, Hearing location maintenance, Attorney Tables, Other Parties
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/application/security-authorization.md, docs/screens/frm-other-firms.md

BR-030 Saving attorney tables persists six child collections in a fixed order within one write

Field Value
Statement Saving attorney tables persists six child collections in a fixed order within one write.
Trigger A user saves attorney-table edits or an AJAX table mutation reaches the manager.
Enforcement clsAttorneyTableManager.OnWrite saves the attorney table child collections in a fixed sequence inside one write operation.
Outcome Attorney conflict, policy, worker, schedule, and related table changes are persisted together in one ordered manager write.*
Origin SAIF.Application.Claim.Legal — clsAttorneyTableManager
Reached from Attorney Tables, Inline AJAX grid edit via DataHelper.aspx
Tables ATTORNEY_WORKER_ASSIGNMENT, ATTORNEY_CONFLICT, ATTORNEY_POLICY_ASSIGNMENT, ATTORNEY_SCHEDULE
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/application/operations/inline-ajax-grid-edit.md, docs/screens/frm-attorney-assignment.md

BR-031 Lookup code lists are cached in-process for 8 hours sliding

Field Value
Statement Lookup code lists are cached in-process for 8 hours (sliding) at low priority.
Trigger Attorney-table, hearing-location, or profile screens first request shared lookup lists.
Enforcement AddToCache helpers in clsAttorneyTableManager and clsHearingLocationManager populate shared lookup data into process cache.
Outcome Repeated screen loads reuse cached code lists instead of requerying the database for each request.
Origin SAIF.Application.Claim.Legal — clsAttorneyTableManager, clsHearingLocationManager
Reached from Attorney profile maintenance, Hearing location maintenance, Out of Town Rotations
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/application/operations/hearing-location-maintenance.md

BR-050 New hearing locations default RequiresFullDayFlag False RotationFlag False CreateDate Today CreateUser DPI UserID

Field Value
Statement New hearing locations default to RequiresFullDayFlag = False and RotationFlag = False, with CreateDate = Today and CreateUser = DPI.UserID.
Trigger A user inserts a new hearing location row.
Enforcement clsHearingLocationManager.InsertNewLocation seeds the new row before it is edited on the screen.
Outcome New hearing-location records start with stable default flags and audit fields.
Origin SAIF.Application.Claim.Legal — clsHearingLocationManager
Reached from Hearing location maintenance, Hearing Locations
Tables HEARING_LOCATION
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/application/operations/hearing-location-maintenance.md, docs/screens/frm-hearing-location.md

BR-060 Attorney profiles are active only when ExpirationDate has not passed

Field Value
Statement An attorney profile is "active" only when its ExpirationDate has not passed.
Trigger The attorney profile screen loads or refreshes active-only profile data.
Enforcement clsMaintenanceManager.GetProfiles returns active profiles separately from all profiles based on expiration status.
Outcome The default attorney-profile view excludes expired attorney profiles until the user asks to include them.
Origin SAIF.Application.Claim.Legal — clsMaintenanceManager
Reached from Attorney profile maintenance, Attorney Profile
Tables ATTORNEY_PROFILE
Source docs/libraries/saif-application-claim-legal/business-rules.md, docs/screens/frm-attorney-profile.md

Field Value
Statement Legal case evaluation due date is Today.NextWorkDay(18).
Trigger The attorney assignment batch process creates or updates assignment side effects for an eligible case.
Enforcement The attorney-assignment business process in SAIF.Business.Claim.Legal computes the legal case evaluation due date using the next-workday offset.
Outcome Assignment-driven legal evaluation follow-up dates land eighteen working days after the triggering event.
Origin SAIF.Business.Claim.Legal — assignment process
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-business-claim-legal/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-ASG-002 Assignment result codes CA and CAC trigger

Field Value
Statement Assignment result codes CA and CAC trigger downstream assignment processing side effects.
Trigger The attorney assignment business flow processes an assignment result whose code is CA or CAC.
Enforcement The assignment batch logic branches on these result codes to drive follow-on work.
Outcome Only qualifying assignment outcomes trigger the documented assignment follow-up actions.
Origin SAIF.Business.Claim.Legal — assignment process
Reached from Attorney-to-claim assignment
Source docs/libraries/saif-business-claim-legal/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-CT-03 Assignee must hold task-update AD access

Field Value
Statement The assignee mailid must hold AD resource CTTaskUpdate, or else external resource RTWExternalUpdate.
Trigger The assignment workflow generates a claim task and sets its assignee mailid.
Enforcement clsClaimTask.ValidMailId validates assignee access during task creation/save.
Outcome Generated claim tasks are blocked when the chosen assignee lacks the required task-update authorization.
Origin SAIF.Business.Tasks.Claim — clsClaimTask
Reached from Attorney-to-claim assignment
Tables TASK
Source docs/libraries/saif-business-tasks-claim/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-CT-10 Claim tasks default to the Manage Claims category

Field Value
Statement Claim tasks are always created under the Manage Claims category (CLMM) unless the caller requests Fast Track (FSTRK).
Trigger The attorney assignment workflow creates a downstream claim task.
Enforcement clsClaimTask.NewTask and clsClaimTaskGenerator.NewTask seed the category during task creation.
Outcome Assignment-generated tasks enter the claims task domain under the standard Manage Claims category unless explicitly overridden.
Origin SAIF.Business.Tasks.Claim — clsClaimTask, clsClaimTaskGenerator
Reached from Attorney-to-claim assignment
Tables TASK
Source docs/libraries/saif-business-tasks-claim/business-rules.md, docs/application/operations/attorney-to-claim-assignment.md

BR-PRT-008 Render and distribute preconditions

Field Value
Statement A report can be rendered or distributed only when its XML document exists and a report package is assigned.
Trigger The print preview screen attempts to render a document.
Enforcement ReportBase.Render and ReportBase.Distribute short-circuit unless both package and XML prerequisites are present.
Outcome Print preview does not call downstream print services with incomplete report payloads.
Origin SAIF.Services.Printing — ReportBase
Reached from Print preview and document distribution, Print Preview
Source docs/libraries/saif-services-printing/business-rules.md, docs/screens/frm-print-preview.md

BR-IMG-010 Wire format contract key set and order

Field Value
Statement The emitted key set, key spelling, and key order form the imaging/xPression wire contract; every key in the fixed list is always present even when its value is blank.
Trigger Print/document distribution serializes imaging metadata through clsImageImport.ToString().
Enforcement clsImageImport.ToString() emits the stable newline-delimited metadata block consumed by downstream print/imaging components.
Outcome Print consumers can rely on a fixed metadata shape and field order across document-distribution requests.
Origin SAIF.Services.Imaging.Import — clsImageImport
Reached from Print preview and document distribution
Source docs/libraries/saif-services-imaging-import/business-rules.md, docs/application/operations/print-preview-and-document-distribution.md

BR-003 Only populated argument slots are transmitted

Field Value
Statement Only argument slots that hold a value are transmitted to the scheduler; unsupplied arguments must not be sent as parameters.
Trigger LegalMaintenance constructs and submits an Appworx batch request.
Enforcement clsRequestAppworxJob only copies non-empty ArgN values into the stored-procedure request.
Outcome Appworx receives sparse parameter lists that reflect only the arguments the batch workflow actually populated.
Origin SAIF.Services.Appworx — clsRequestAppworxJob
Reached from Batch job submission (Appworx)
Tables JOB_QUEUE
SQL SQL-001
Source docs/libraries/saif-services-appworx/business-rules.md, docs/application/operations/batch-job-submission-appworx.md

BR-004 Module requestor and printer are always supplied with defaults

Field Value
Statement Module, requestor, and printer are always supplied on every submission; requestor defaults to Appworx and printer defaults to SYSOUT when the caller does not specify them.
Trigger LegalMaintenance submits an Appworx job request.
Enforcement clsRequestAppworxJob seeds defaults and unconditionally supplies the fixed procedure parameters.
Outcome Batch submissions always include the Appworx contract's required top-level identifiers, even when the caller omits optional values.*
Origin SAIF.Services.Appworx — clsRequestAppworxJob
Reached from Batch job submission (Appworx)
Tables JOB_QUEUE
SQL SQL-001
Source docs/libraries/saif-services-appworx/business-rules.md, docs/application/operations/batch-job-submission-appworx.md

Rules not reachable from this application

Rules documented in a consumed library that no application execution path reaches.

Library Rule ID Statement Reason not reachable
SAIF.Application BR-APP-002 Access is denied by default; a manager is restricted until a security evaluation explicitly grants view or update rights. Reachability analysis for LegalMaintenance centers on documented workflow- and screen-level effects; this base-state contract is not named as a distinct executed rule.**
SAIF.Application.Claim.Legal BR-005 The LNCaseUpdate resource is surfaced as a Boolean capability for update workflows. LNCaseUpdate is documented as unused in LegalMaintenance and relevant to sibling LegalNet workflows only.
SAIF.Business.Claim.Legal BR-LC-001 Case type is required. BR-LC-* case-entry rules belong to LegalNet case maintenance, not LegalMaintenance screens.
SAIF.Business.Claim.Legal BR-SC-001 Schedule type and status are required. These schedule rules govern LegalNet legal-case schedules, not the attorney maintenance grids documented for LegalMaintenance.**
SAIF.Business.Claim.Legal BR-AT-001 Attorney, attorney type and effective date are required. Screen docs show collection-validity gates but do not identify this exact underlying validation rule on a named execution path.**
SAIF.Business.Claim.Legal BR-HL-001 Hearing location code and name are required. The screen analysis does not name the underlying hearing-location business-object validation rule explicitly.**
SAIF.Business.Tasks BR-001 A task must have a Task Category Code. Attorney-assignment docs reach claim-task rules in SAIF.Business.Tasks.Claim; they do not trace base-task rules separately.
SAIF.Business.Tasks.Claim BR-CT-01 A claim task must reference a resolvable claim. The assignment documentation does not identify this lower-level rule explicitly on a reachable path.**
SAIF.Business.View.Policy BR-VP-010 Demo users see masked policy, address, agency and team member data. The old application page mentioned masking, but no current screen or operation analysis proves an executed policy-view path.**
SAIF.Business.View.Provider BR-PRV-001 Primary tax ID must be a 9-digit number. Provider-view retrieval is not documented on any LegalMaintenance execution path.
SAIF.Business.Utilities BR-001 A Nothing or whitespace-only string is returned unchanged by title casing. No analyzed LegalMaintenance workflow or screen references this utility behavior on an executed path.
SAIF.Services.Printing BR-PRT-003 Distribution is queued through MSMQ when asynchronous and sent directly otherwise. The app print workflow documents preview rendering, not queued distribution execution from LegalMaintenance.**
SAIF.Services.Imaging.Import BR-IMG-001 Date index fields are emitted only when inside valid date bounds. Application docs name only the overall wire-format contract, not specific field-emission rules.
SAIF.Services.Appworx BR-001 When the override flag is set, Appworx submissions route to PRADT on WCISPROD or WCISDEV1. The documented LegalMaintenance caller omits the override flag, so this routing override path is not executed.

Notes

  • Application-level rules retain the existing BR-APP-001 through BR-APP-006 identifiers so existing cross-document references continue to resolve.
  • Library rules remain in their owning libraries' canonical ID schemes and are restated here only when a LegalMaintenance workflow or screen analysis names a concrete reachable path.
  • No inherited INH-NNN rules are included because the repository artifacts reviewed for this run did not provide documented Legends-derived inherited-rule evidence for this application page.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • .saifdocgen/templates/application/app-business-rules.md
  • .saifdocgen/skills/technical-writing-standards/SKILL.md
  • .saifdocgen/state/analysis-manifest.json
  • .saifdocgen/state/decision-log.md
  • docs/application/architecture.md
  • docs/application/data-model.md
  • docs/application/dependencies.md
  • docs/application/operations-processes.md
  • docs/application/operations/attorney-profile-maintenance.md
  • docs/application/operations/attorney-to-claim-assignment.md
  • docs/application/operations/batch-job-submission-appworx.md
  • docs/application/operations/hearing-location-maintenance.md
  • docs/application/operations/inline-ajax-grid-edit.md
  • docs/application/operations/print-preview-and-document-distribution.md
  • docs/application/security-authorization.md
  • docs/application/tech-debt.md
  • docs/libraries/saif-application/business-rules.md
  • docs/libraries/saif-application-claim/business-rules.md
  • docs/libraries/saif-application-claim-legal/business-rules.md
  • docs/libraries/saif-business-claim/business-rules.md
  • docs/libraries/saif-business-claim-legal/business-rules.md
  • docs/libraries/saif-business-policy/business-rules.md
  • docs/libraries/saif-business-tasks/business-rules.md
  • docs/libraries/saif-business-tasks-claim/business-rules.md
  • docs/libraries/saif-business-utilities/business-rules.md
  • docs/libraries/saif-business-view-policy/business-rules.md
  • docs/libraries/saif-business-view-provider/business-rules.md
  • docs/libraries/saif-services-appworx/business-rules.md
  • docs/libraries/saif-services-imaging-import/business-rules.md
  • docs/libraries/saif-services-printing/business-rules.md
  • docs/screens/default.md
  • docs/screens/frm-attorney-assignment.md
  • docs/screens/frm-attorney-profile.md
  • docs/screens/frm-hearing-location.md
  • docs/screens/frm-legal-person.md
  • docs/screens/frm-other-firms.md
  • docs/screens/frm-print-preview.md
  • docs/screens/frm-rotation.md