nathan 479df6bd8a chore: archive legacy Identity, Workday, and Intune folders
- Move Identity/, Workday/, Intune/ to archive/ (superseded by nexus-mcp shards)
- Move 'Local Setup.md' to archive/ (superseded by nexus-mcp/Local-Setup.md)
- Add archive/README.md explaining migration and preserved content
- Clean repository structure: only nexus-mcp, documentation, and .github remain active

All legacy functionality migrated to nexus-mcp sharded architecture.
Archived folders preserved for reference and historical context.

Refs: SESSION_SNAPSHOT_2026-04-13.md
2026-04-13 09:38:42 -04:00

2.7 KiB
Raw Blame History

Here is a prioritized list of high-value tasks you can complete right now in your local workday-mcp environment:

  1. Expand the "Mismatch" Logic (WIS-014 WIS-018) Youve built the Manager scanner, but a true Identity Sync needs to detect several other types of drift.

Job Title Mismatch: Build a tool to compare "Workday Title" vs "AD Title".

Department Drift: Identify workers whose cost center in Workday doesn't match their AD Department string.

Legal Name vs. Preferred Name: Build logic to handle cases where AD uses a "Display Name" that differs from the Workday "Legal Name".

Status Reconciliation: Create a tool that specifically flags "Terminated" in Workday but "Enabled" in AD.

  1. Implement Schema Validation (WIS-010) Instead of just returning "any" dictionary, use a library like pydantic to enforce a strict contract.

The Build: Create a WorkerModel that defines exactly what fields are required (e.g., employee_id must be a string of a certain length).

The Test: Write a script that tries to "break" your tools by feeding them bad data to see if your error handling catches it gracefully.

  1. Build a "Dry Run" Comparison Tool (WIS-019) Before you ever automate a "Write" to Active Directory, you need a tool that simulates the change.

The Logic: Create a tool that takes a Workday record and an AD record (both mocked for now) and returns a "Diff" object.

Output Example: {"field": "department", "old": "Sales", "new": "Marketing", "action": "update"}.

  1. Hardening & Security (WIS-027 & Priority 6) Prepare for the "Production" environment requirements.

Log Redaction: Update your server to ensure that if an error occurs, it doesn't print sensitive data (like emails or IDs) to the console/logs.

Environment Configuration: Move your "Constants" (like port numbers or mock file paths) into a .env file and use the python-dotenv library to load them.

Rate Limiting Simulation: Workday APIs have limits. Build a "decorator" for your tools that simulates a delay or a "429 Too Many Requests" error to test how your server handles it.

  1. Documentation & "Self-Service" (WIS-027) Build an MCP Resource: MCP supports "Resources" (read-only files). Create a resource that serves a "Data Dictionary" explaining what every Workday field means.

Installation Script: Write a simple setup.sh or setup.bat that automates the creation of the .venv and installation of requirements for the next person who joins the project.

  1. Unit Testing (The "Quality" Pillar) Pytest Integration: Create a /tests folder and write tests that verify your get_worker_manager logic for all three scenarios (Found, Not Found, No Manager).

CI/CD Simulation: Set up a local Git Hook that prevents you from committing code if it has Pylance errors or failing tests.