# PAMS Documentation Test

What this repository is for is not stated in prose this page can quote, so it cannot be established from this repository alone.

- **Terms of use** — no licence file was found in the parsed corpus, so the terms cannot be established from this repository alone.
- **Version** — no version string reached this page, so the release cannot be established from this repository alone.
- **Editions** — whether this repository is the whole product or one edition of it cannot be established from this repository alone.
- **Running it** — no run path was found in the parsed corpus, so how to start it cannot be established from this repository alone.

## What is in here

Each part names what it holds before how much of it there is. The counts are read from the evidence census computed for this snapshot, one per part at most.

- [Pams](subsystem-pams) — api, web; HTTP endpoints, controllers and services. A file to open: `JWTAuthenticateAttribute.cs` [Pams/API/Pams.API/ActionFilters/JWTAuthenticateAttribute.cs:524]. 7057 entities under `Pams` [census].
- [Auth](subsystem-outlook-plugin-src-auth) — service. A file to open: `auth.service.ts` [Outlook_plugin/src/auth/auth.service.ts:1]. 22 entities under `Outlook_plugin/src/auth` [census].
- [Attachement](subsystem-outlook-plugin-src-attachement) — service. A file to open: `attachement.service.ts` [Outlook_plugin/src/attachement/attachement.service.ts:1]. 23 entities under `Outlook_plugin/src/attachement` [census].
- [Calendar](subsystem-outlook-plugin-src-calendar) — service. A file to open: `calendar.service.ts` [Outlook_plugin/src/calendar/calendar.service.ts:1]. 76 entities under `Outlook_plugin/src/calendar` [census].
- [Activity](subsystem-outlook-plugin-src-activity) — service. A file to open: `activity.service.ts` [Outlook_plugin/src/activity/activity.service.ts:1]. 17 entities under `Outlook_plugin/src/activity` [census].
- [Contacts](subsystem-outlook-plugin-src-contacts) — service. A file to open: `contact.service.ts` [Outlook_plugin/src/contacts/contact.service.ts:1]. 9 entities under `Outlook_plugin/src/contacts` [census].
- [Frontend](subsystem-frontend-src-app) — components, models, services, settings; services, components and modules. A file to open: `bill-of-materials.service.ts` [Frontend/src/app/components/bill-of-materials/bill-of-materials.service.ts:1]. 1661 entities under `Frontend/src/app` [census].
- [Pams Web](subsystem-pams-web-portal-pams-web-src-app) — actions, reducers, models, components; services, components and modules. A file to open: `auth.interceptor.ts` [Pams/Web/portal/pams-web/src/app/interceptors/auth.interceptor.ts:12]. 166 entities under `Pams/Web/portal/pams-web/src/app` [census].
- [Outlook Plugin](subsystem-outlook-plugin) — account, environment, taskpane; service. A file to open: `account.service.ts` [Outlook_plugin/src/account/account.service.ts:1]. 493 entities under `Outlook_plugin` [census].
- [Azure Dns Migration](subsystem-azure-dns-migration) — docs. A file to open: `MIGRATION_CHECKLIST.md` [azure-dns-migration/docs/MIGRATION_CHECKLIST.md:1]. 319 entities under `azure-dns-migration` [census].
- **Repository root and unclaimed files** — frontend; constants. A file to open: `README.md` [Frontend/README.md:1]. 19 entities in files no part claims [census].

## Trust and security, as the code carries it

Topics below come from sweeping symbol names and file paths in the parsed corpus. They are not read from a security document: a page that takes its topics from what a document enumerates inherits whatever that document left out.

- **Authentication** — `DoubleWayAuthenticationComponent` [Frontend/src/app/components/configuration/double-way-authentication/double-way-authentication.component.ts:1], `LoginComponent` [Frontend/src/app/components/security/login/login.component.ts:1], `AfterNewPasswordComponent` [Frontend/src/app/components/security/new-password/after-new-password/after-new-password.component.ts:1].
- **Authorization** — `FilesRolesComponent` [Frontend/src/app/components/files/files-roles/files-roles.component.ts:1], `RolesDetailsComponent` [Frontend/src/app/components/security/roles/roles-details/roles-details.component.ts:1], `RolesComponent` [Frontend/src/app/components/security/roles/roles.component.ts:1].
- **Secrets and configuration** — `TokenRefreshInterceptor` [Frontend/src/app/InterceptorTokenRefresh.ts:13], `tokenGetter` [Frontend/src/app/models/security/auth.module.ts:13], `tokenGetter` [Frontend/src/app/services/pams-services.module.ts:143].
- **Transport and browser boundaries** — `EscapeHtmlPipe` [Frontend/src/app/settings/keep-html.pipe.ts:1], `Microsoft.Owin.Cors` [Pams/API/Pams.API/Pams.API.csproj:1], `Microsoft.Owin.Security.Cookies` [Pams/API/Pams.API/Pams.API.csproj:1].
- **Input validation** — `DynamicValidationComponent` [Frontend/src/app/components/configuration/dynamic-validation/dynamic-validation.component.ts:1], `ValidationResult` [Frontend/src/app/components/configuration/templates/html-templates-variable.ts:46], `WidgetAccountsInSalesPipelineComponent` [Frontend/src/app/components/dashboard/dashboard-libary/widgets/widget-accounts-in-sales-pipeline/widget-accounts-in-sales-pipeline.component.ts:1].
- **Audit and access logging** — `AuditController` [Pams/API/Pams.API/Controllers/Security/AuditController.cs:21], `GetAll` [Pams/API/Pams.API/Controllers/Security/AuditController.cs:138], `GetAllSalesJobs` [Pams/API/Pams.API/Controllers/Security/AuditController.cs:151].

No symbol name or path in the parsed corpus matched rate limiting and abuse and cryptography. That is a statement about the names this codebase uses, not a finding about what it does.

## What this repository carries

One row per capability lane, scoped to where the evidence for it sits. A lane marked as not found means nothing in the parsed corpus matched it — which is a fact about this parse, and the honest place to start looking rather than the end of the question.

| Capability | In this repository | Where |
|---|---|---|
| Database models | not found | — |
| HTTP endpoints | 1781 [census] | `Pams/API/Pams.API/Controllers/BookingTarget/AccountManagerTargetController.cs`, `Pams/API/Pams.API/Controllers/BookingTarget/EmployeeBonusController.cs` |
| Controllers | 248 [census] | `Pams/API/Pams.API/ActionFilters/JWTAuthenticateAttribute.cs`, `Pams/API/Pams.API/Controllers/BaseController.cs` |
| Configuration | yes | `Pams/API/Pams.API.Core/appsettings.Development.json`, `Pams/Web/Pams.Web/appsettings.json` |
| Automated tests | yes | — |
| Written documentation | yes | `Frontend/README.md`, `Outlook_plugin/429_ERROR_FIX_README.md` |
| Licence | not found | — |

## Where next

Five ways in. Each one names pages that exist in this documentation, or says what the repository holds instead.

- **Deploying it** — no deployment descriptor and no deployment page were found; how this is deployed cannot be established from this repository alone.
- **Understanding the architecture** — [System Overview](system-overview), [Pams](subsystem-pams), [Auth](subsystem-outlook-plugin-src-auth) and [Attachement](subsystem-outlook-plugin-src-attachement).
- **Contributing a change** — [Documentation health](documentation-health).
- **Reviewing security** — the topics above, starting at [Frontend/src/app/components/configuration/double-way-authentication/double-way-authentication.component.ts:1].
- **Extending it** — [Pams](subsystem-pams).

## Before you rely on it

Each item is something the evidence for this snapshot raises, not a generic release checklist.

- 1781 of 1781 HTTP endpoints [census] declare no guard or middleware [parsed surface] — check that against what the surface is meant to expose.
- Configuration to set before a run sits in `Pams/API/Pams.API.Core/appsettings.Development.json`, `Pams/Web/Pams.Web/appsettings.json`.
- No licence file was found — the terms of use are undecided in this repository.

## How this page was assembled

Every count above is read from the evidence census computed for this snapshot; every other claim points at a file and a line you can open.

The census covers 9862 entities and 29299 relationships across 11 parts [census], and it passed its own independent recount [census].
