Fix CI failures: remove unicode and fix lean build
- Replace all unicode (emojis, checkmarks, arrows, em-dashes) with ASCII in .claude/ docs - Comment out OperatingSystemsList route in core.js - breaks lean builds without computers plugin - Comment out Operating Systems tab in ModelCatalogHub - TODO: Plugins should dynamically register their settings routes Fixes #2 CI check failures on wj branch Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -371,9 +371,9 @@ curl -X POST $SLACK_WEBHOOK_URL -d '{
|
||||
## Recommended Setup for ShopDB Team
|
||||
|
||||
### Phase 1: Minimal (This Week)
|
||||
1. ✅ Create `memory/active_work.md` (5 min)
|
||||
2. ✅ Adopt branch naming: `<user>/<ai-tool>/<feature>` (0 min)
|
||||
3. ✅ Add AI commit prefix: `[AI: tool] message` (0 min)
|
||||
1. [X] Create `memory/active_work.md` (5 min)
|
||||
2. [X] Adopt branch naming: `<user>/<ai-tool>/<feature>` (0 min)
|
||||
3. [X] Add AI commit prefix: `[AI: tool] message` (0 min)
|
||||
|
||||
### Phase 2: Enhanced (Next Sprint)
|
||||
4. Create `.claude/sessions/` with session notes (15 min)
|
||||
|
||||
@@ -1162,13 +1162,13 @@ def test_saml_group_to_role_mapping():
|
||||
- HTTPS enabled on ShopDB (required for SAML)
|
||||
|
||||
## Step 1: Create M365 Enterprise Application
|
||||
1. Go to Azure AD / Entra ID → Enterprise Applications
|
||||
2. New Application → Create your own
|
||||
1. Go to Azure AD / Entra ID -> Enterprise Applications
|
||||
2. New Application -> Create your own
|
||||
3. Name: "ShopDB Production"
|
||||
4. Click Assign users and groups
|
||||
|
||||
## Step 2: Configure SAML in Azure
|
||||
1. In Enterprise App, go to Single sign-on → SAML
|
||||
1. In Enterprise App, go to Single sign-on -> SAML
|
||||
2. Basic SAML Configuration:
|
||||
- Identifier (Entity ID): `https://shopdb.yourdomain.com`
|
||||
- Reply URL (ACS): `https://shopdb.yourdomain.com/api/auth/saml/acs`
|
||||
@@ -1182,7 +1182,7 @@ def test_saml_group_to_role_mapping():
|
||||
|
||||
## Step 3: Configure ShopDB
|
||||
1. Login to ShopDB as admin
|
||||
2. Settings → Authentication
|
||||
2. Settings -> Authentication
|
||||
3. Enable SAML SSO toggle
|
||||
4. Paste Federation Metadata URL from Azure
|
||||
5. Set Entity ID: `https://shopdb.yourdomain.com`
|
||||
@@ -1344,7 +1344,7 @@ If complete failure:
|
||||
2. **Plugin Hooks for Auth**
|
||||
- `get_authentication_providers()` - Contribute new auth methods
|
||||
- `on_user_authenticated()` - Post-auth callbacks
|
||||
- `map_external_groups_to_roles()` - Custom group→role logic
|
||||
- `map_external_groups_to_roles()` - Custom group->role logic
|
||||
- `provision_user_attributes()` - Custom user provisioning
|
||||
|
||||
3. **Core SAML Implementation**
|
||||
@@ -1420,7 +1420,7 @@ If complete failure:
|
||||
|
||||
## Success Criteria
|
||||
|
||||
✅ **Functional Requirements:**
|
||||
[X] **Functional Requirements:**
|
||||
- [ ] M365 SAML login works end-to-end
|
||||
- [ ] Auto-user-creation provisions users correctly
|
||||
- [ ] Group-based admin assignment works
|
||||
@@ -1429,7 +1429,7 @@ If complete failure:
|
||||
- [ ] Plugin can contribute custom auth provider
|
||||
- [ ] Plugin can extend user provisioning
|
||||
|
||||
✅ **Non-Functional Requirements:**
|
||||
[X] **Non-Functional Requirements:**
|
||||
- [ ] No breaking changes to existing auth
|
||||
- [ ] Follows ShopDB plugin architecture patterns
|
||||
- [ ] Works in air-gapped deployment
|
||||
@@ -1437,7 +1437,7 @@ If complete failure:
|
||||
- [ ] Comprehensive error handling
|
||||
- [ ] Audit logging for all auth events
|
||||
|
||||
✅ **Documentation:**
|
||||
[X] **Documentation:**
|
||||
- [ ] Admin setup guide complete
|
||||
- [ ] Plugin extension guide complete
|
||||
- [ ] ADR documenting auth service architecture
|
||||
|
||||
@@ -208,16 +208,16 @@ Then proceed without the required tools (but note that you're skipping for this
|
||||
## Success Metrics
|
||||
|
||||
### Good Engagement
|
||||
- ✅ Coordinator used before every file edit
|
||||
- ✅ Gortex used for architectural queries
|
||||
- ✅ Skills invoked when task matches their domain
|
||||
- ✅ Workflows proposed for complex tasks
|
||||
- [X] Coordinator used before every file edit
|
||||
- [X] Gortex used for architectural queries
|
||||
- [X] Skills invoked when task matches their domain
|
||||
- [X] Workflows proposed for complex tasks
|
||||
|
||||
### Poor Engagement
|
||||
- ❌ Editing files without announce_work
|
||||
- ❌ Using grep when Gortex would be more accurate
|
||||
- ❌ Creating charts without dataviz skill guidance
|
||||
- ❌ Manual sequential analysis when workflow would parallelize
|
||||
- [ ] Editing files without announce_work
|
||||
- [ ] Using grep when Gortex would be more accurate
|
||||
- [ ] Creating charts without dataviz skill guidance
|
||||
- [ ] Manual sequential analysis when workflow would parallelize
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -148,11 +148,11 @@ Contact: [internal security team email]
|
||||
|
||||
## What's Already Good:
|
||||
|
||||
✅ Strong .gitignore (lines 64-86 cover most credential patterns)
|
||||
✅ Darkwing scanning on PRs
|
||||
✅ Air-gapped deployment (secrets never in GitHub)
|
||||
✅ ADR-016: Device tokens instead of user credentials for kiosks
|
||||
✅ Collector tokens are 64-char hashes, not readable passwords
|
||||
[X] Strong .gitignore (lines 64-86 cover most credential patterns)
|
||||
[X] Darkwing scanning on PRs
|
||||
[X] Air-gapped deployment (secrets never in GitHub)
|
||||
[X] ADR-016: Device tokens instead of user credentials for kiosks
|
||||
[X] Collector tokens are 64-char hashes, not readable passwords
|
||||
|
||||
---
|
||||
|
||||
@@ -190,5 +190,5 @@ gitleaks detect --verbose
|
||||
|
||||
- GitHub Security tab: https://github.com/ge-aero/shopdb-flask/security
|
||||
- Secret scanning alerts: (once enabled)
|
||||
- Darkwing findings: Security → Code scanning
|
||||
- Dependabot alerts: Security → Dependabot
|
||||
- Darkwing findings: Security -> Code scanning
|
||||
- Dependabot alerts: Security -> Dependabot
|
||||
|
||||
Reference in New Issue
Block a user