diff --git a/.github/workflows/claude-documentation-reviewer.yml b/.github/workflows/claude-documentation-reviewer.yml index d8ef1bbcab..3e61aafbba 100644 --- a/.github/workflows/claude-documentation-reviewer.yml +++ b/.github/workflows/claude-documentation-reviewer.yml @@ -271,20 +271,28 @@ jobs: i += 1 continue - # Convert bold-closed format: **Line N: title** + sub-bullets → **Line N:** title. parts. - m = re.match(r'^\*\*(Line \d+:.*?)\*\*\s*$', line) + # Convert bold-closed format: **Line N: label.** + continuation → **Line N:** label. continuation. + m = re.match(r'^\*\*(Line \d+):\s*(.*?)\*\*\s*$', line) if m: - title = m.group(1).rstrip('.') + lineref = m.group(1) + label = m.group(2).rstrip('.') i += 1 - parts = [] - while i < len(src) and re.match(r'^\s*[-*]\s+', src[i]): - sub = re.sub(r'^\s*[-*]\s+', '', src[i]) - sub = re.sub(r'^(Issue|Fix|Description|Suggested change|Current):\s*', '', sub, flags=re.IGNORECASE) - if sub.strip(): - parts.append(sub.strip().rstrip('.')) - i += 1 - combined = f'**{title}. {". ".join(parts)}.**' if parts else f'**{title}.**' - result.append(combined) + parts = [label] if label else [] + while i < len(src): + next_line = src[i] + if re.match(r'^\s*[-*]\s+', next_line): + sub = re.sub(r'^\s*[-*]\s+', '', next_line) + sub = re.sub(r'^(Issue|Fix|Description|Suggested change|Current|Should):\s*', '', sub, flags=re.IGNORECASE) + if sub.strip(): + parts.append(sub.strip().rstrip('.')) + i += 1 + elif next_line.strip() and not re.match(r'^\*\*(Line \d+)', next_line) and not re.match(r'^#+\s', next_line): + parts.append(next_line.strip().rstrip('.')) + i += 1 + else: + break + desc = '. '.join(parts).rstrip('.') + result.append(f'**{lineref}:** {desc}.' if desc else f'**{lineref}:**') continue # Collapse numbered list items with sub-bullets (e.g. 1. **Issue title**: desc\n - Current: ...\n - Fix: ...) diff --git a/docs/passwordsecure/9.1/msp_system.md b/docs/passwordsecure/9.1/msp_system.md index 299a457eaf..e6d7811376 100644 --- a/docs/passwordsecure/9.1/msp_system.md +++ b/docs/passwordsecure/9.1/msp_system.md @@ -6,62 +6,54 @@ sidebar_position: 30 # MSP System -To ensure optimal operation, we recommend that the following hardware resources are made available: +For optimal operation, make the following hardware resources available. ## Microsoft SQL Server -The following system requirements are the minimum system requirements and should manage around 10 -customers with less than 20 users each. +These are the minimum system requirements for managing approximately 10 customers with fewer than 20 users each. -- Windows Server 2016 (or newer) -- MSSQL Server 2014 (or newer) -- 4 CPU’s +- Windows Server 2016 or newer +- MSSQL Server 2014 or newer +- 4 CPUs - 16 GB RAM -- min. 100 GB HDD +- 100 GB HDD minimum :::warning -Please note, that using a SQL Server with Express edition is not recommended because of -diverse limitations there. +SQL Server Express edition is not recommended due to its limitations. ::: +As your customer count grows, add the following resources for every 200 additional users: -If your customer's count is growing over time, you should add every 200 users a minimum of at least: - -- 2 CPU’s +- 2 CPUs - 8 GB RAM ## Application Server -The following system requirements are the minimum system requirements and should manage around 10 -customers with 20 users each. +These are the minimum system requirements for managing approximately 10 customers with 20 users each. -- Windows Server 2016 (or newer) -- 4 CPU’s +- Windows Server 2016 or newer +- 4 CPUs - 16 GB RAM -- min. 50 GB HDD +- 50 GB HDD minimum - .NET Framework 4.8 -If your customer's count is growing over time, you should add every 200 users a minimum of at least: +As your customer count grows, add the following resources for every 200 additional users: - 1 CPU - 4 GB RAM -RECOMMENDED: Currently, we suggest you use an application server to handle a max of about 100 -customers. So if you reach 100 customers, you should set up a second Application Server or use some -sort of load balancing between the application servers. +:::tip +Configure each application server to handle a maximum of 100 customers. When you reach that limit, set up a second application server or implement load balancing across your application servers. +::: :::warning -Every additional 1000 users an additional Web-Endpoint - incl. loadbalancing - is -recommended +Add an additional Web Endpoint — including load balancing — for every 1,000 additional users. ::: - :::warning -Every additional 100 customers/1000 users an additional Application Server - incl. -loadbalancing - is recommended. +Add an additional application server — including load balancing — for every 100 additional customers or 1,000 additional users. ::: - -NOTE: Please note that individual variables - like the number of passwords per user - will affect -performance. Especially for MSP-Systems it is required to monitor performance continuously, and add -additional resources on demand. +:::note +Individual variables, such as the number of passwords per user, affect performance. For MSP systems, monitor performance continuously and add resources as needed. +:::