Updated 'update-readme' prompt and used it to update the readme

This commit is contained in:
nathan 2026-04-03 12:24:33 -04:00
parent a999ec0c77
commit 7fbb6d6a41
2 changed files with 65 additions and 44 deletions

View File

@ -1,12 +1,24 @@
Act as a Senior Technical Program Manager. I need to update the `README.md` for my 'Workday-MCP' project to serve as a high-visibility Status Page.
**CONTEXT:**
- We just moved from a single-file script to a modular architecture (`server.py` + `lib/data.py`).
- We have 3 operational tools: `get_worker_status`, `get_worker_manager`, and `scan_manager_mismatches`.
- Current Goal: WIS-017 (Manager Mismatch Detection) is prototyped and functional with 9 mock records.
- Next Milestone: WIS-008 (Transitioning from Mock to Real Workday API).
## CONTEXT
### Phase 1: Context Retrieval (RAG)
**Execute these lookups to ground your analysis:**
1. **Get the "What" (Code):**
* Run: `git diff --cached` (If empty, warn user to stage files first).
2. **Get the "Why" (Intent):**
* **Search Workspace:** Find the most recent `SESSION_SNAPSHOT*.md` in `documentation/project-history/`.
* **Search Workspace:** Look for `TODO` or `// RESTART NOTE` comments in the changed files themselves.
* *Reasoning:* A commit message is better if it says "feat(auth): enable TFA per session plan" rather than just "feat(auth): update config".
**REQUIREMENTS:**
### Phase 2: Change Analysis (Chain of Thought)
*Reference: `.github/knowledge/example.CoT-Prompting.md`*
Analyze the combined inputs (Diff + Session Context):
1. **Component Determination:** Identify which major component(s) of the project are affected (e.g., `core`, `auth`, `docs`).
2. **Scope/WIS Identification:** Narrow to the specific module (e.g., `core`, `auth`, `docs`) and align with WIS IDs for traceability.
3. **Breaking Change Check:** Does this modify `compose.yaml` ports or volume paths? If yes, flag as `BREAKING CHANGE`.
## REQUIREMENTS
1. **Visual Status:** Use a "Traffic Light" system for project components:
- 🟢 Green: Functional/Production-Ready
- 🟡 Yellow: In Progress/Development
@ -15,8 +27,8 @@ Act as a Senior Technical Program Manager. I need to update the `README.md` for
3. **Sprint Alignment:** Reference the WIS (Workday Integration Suite) IDs to maintain traceability to our 2026 roadmap.
4. **Readability:** Use clean Markdown tables and bold headers for scannability.
**INPUT DATA:**
## INPUT DATA
[PASTE YOUR CURRENT README HERE]
**RECENT ACTIVITY:**
## RECENT ACTIVITY
[PASTE YOUR RECENT GIT LOG OR SUMMARY HERE]

View File

@ -2,8 +2,8 @@
**Updated:** 2026-04-03
This page is the high-visibility execution status for the Workday Integration
Suite (WIS) deliverables in this repository.
This page is the high-visibility execution status for Workday Integration Suite
(WIS) delivery in this repository.
## Traffic-light legend
@ -13,66 +13,75 @@ Suite (WIS) deliverables in this repository.
| 🟡 Yellow | In progress / development |
| 🔴 Red | Blocked / not started |
## Context retrieval checkpoint
| Signal | Result | Impact |
| --- | --- | --- |
| `git diff --cached` | No staged files detected | Commit-intent diff is unavailable; stage files before the next status refresh that requires commit-scoped analysis. |
| Latest project snapshot | `documentation/project-history/SESSION_SNAPSHOT_2026-04-03.md` | Session confirms strong standards discipline and that Workday execution remains in kickoff-to-build transition. |
| `TODO` / `// RESTART NOTE` in staged files | Not applicable (no staged files) | No commit-scoped intent markers available for this update cycle. |
| Breaking change scan (`compose.yaml` ports/volumes) | No matching changes detected | No `BREAKING CHANGE` flag required for runtime port/path behavior. |
## Program status summary
| Component | WIS traceability | Status | Notes |
| --- | --- | --- | --- |
| Modular runtime architecture (`server.py` + `lib/data.py`) | WIS-006 | 🟢 Green | Migrated from single-file script to modular layout for maintainability and cleaner backend swap-in. |
| Worker status tool (`get_worker_status`) | WIS-009 | 🟢 Green | Tool returns structured, allowlist-oriented worker payloads from deterministic mock data. |
| Worker manager lookup (`get_worker_manager`) | WIS-017 prep | 🟢 Green | Manager relationship resolution supports normal, missing-manager, and unresolved-manager scenarios. |
| Manager mismatch scan (`scan_manager_mismatches`) | WIS-017 | 🟢 Green | Prototype is functional and scans all current mock records, including intentional mismatch scenarios. |
| Mock data foundation (9 worker records) | WIS-007, WIS-017 | 🟢 Green | Dataset includes valid hierarchy records and one intentional mismatch for detector validation. |
| Transition to real Workday API backend | WIS-008 | 🟡 Yellow | Next milestone: replace mock-backed execution path with API token flow and secure secret handling. |
| Non-prod Workday auth and access readiness | WIS-001, WIS-002, WIS-003 | 🔴 Red | External dependency closure required before end-to-end non-prod API validation can complete. |
| Runtime modular structure (`server.py` + `lib/data.py`) | WIS-006 | 🟢 Green | Modular split is in place and supports controlled backend evolution. |
| Memory-backed worker status tool (`get_worker_status`) | WIS-009 | 🟢 Green | Returns structured allowlist-oriented worker payloads from deterministic fixtures. |
| Manager lookup tool (`get_worker_manager`) | WIS-011, WIS-017 prep | 🟢 Green | Resolves valid, missing-manager, and unresolved-manager scenarios. |
| Manager mismatch detector (`scan_manager_mismatches`) | WIS-017 | 🟢 Green | Functional prototype scans full mock set and reports unresolved manager links. |
| API token flow and real Workday backend | WIS-008 | 🟡 Yellow | Design path is clear; implementation still pending non-prod credentials and auth closure. |
| Non-prod auth/access unblockers | WIS-001 to WIS-003 | 🔴 Red | External decisions and access provisioning remain gate conditions for API-mode validation. |
## Discipline drives quality
| Engineering discipline pillar | Current state | Evidence |
| --- | --- | --- |
| Type hinting discipline | 🟢 Green | Function signatures and return contracts in [Workday/workday-mcp/server.py](Workday/workday-mcp/server.py) and typed mock map in [Workday/workday-mcp/lib/data.py](Workday/workday-mcp/lib/data.py). |
| Pylance quality gate | 🟢 Green | Current implementation maintains zero known Pylance errors in active Workday-MCP runtime files. |
| Modular structure discipline | 🟢 Green | Separation of orchestration (`server.py`) and dataset/backend data layer (`lib/data.py`) enables controlled evolution to API mode. |
| Traceability discipline | 🟢 Green | WIS IDs embedded in docstrings and aligned with sprint board/backlog artifacts. |
| Type hinting discipline | 🟢 Green | Typed return contracts and strongly typed mock map are implemented in runtime modules. |
| Pylance quality gate | 🟢 Green | Current Workday runtime implementation is tracking zero known Pylance errors. |
| Modular architecture discipline | 🟢 Green | Orchestration and data layers are separated for maintainability and backend swap readiness. |
| Traceability discipline | 🟢 Green | WIS IDs are embedded in runtime docstrings and aligned with sprint planning artifacts. |
## Current sprint alignment (WIS roadmap)
## Sprint alignment (WIS roadmap)
| Workstream | Primary IDs | Status | Outcome target |
| Workstream | WIS IDs | Status | Execution posture |
| --- | --- | --- | --- |
| Core read tooling stabilization | WIS-006 to WIS-011 | 🟡 Yellow | Preserve schema stability while preparing backend transition to real API calls. |
| Mismatch detection execution | WIS-014 to WIS-018 | 🟡 Yellow | WIS-017 manager mismatch detector is prototyped and functional; remaining categories continue in sequence. |
| Automation and reporting | WIS-019 to WIS-026 | 🔴 Red | Daily/weekly flow automation and KPI reporting start after API-path readiness and detector completion. |
| Unblockers and access readiness | WIS-001 to WIS-005 | 🔴 Red | Pre-implementation dependencies are defined but not yet closed. |
| Core Workday MCP buildout | WIS-006 to WIS-012 | 🟡 Yellow | Modular and memory-backed foundation is live; API/auth and resilience controls are next. |
| Correlation and mismatch expansion | WIS-013 to WIS-018 | 🟡 Yellow | WIS-017 manager mismatch path is prototyped; remaining mismatch categories are queued. |
| Automation, reporting, remediation | WIS-019 to WIS-030 | 🔴 Red | Flow automation, KPI instrumentation, and cutover remain roadmap backlog. |
## Recent activity
## Recent activity (from git history)
- Completed modular architecture migration from single-file runtime to
`server.py` + `lib/data.py`.
- Implemented and validated three operational MCP tools:
`get_worker_status`, `get_worker_manager`, and `scan_manager_mismatches`.
- Confirmed WIS-017 prototype behavior against 9 mock worker records,
including intentional manager mismatch coverage.
- Established next delivery focus on WIS-008 (mock-to-real Workday API
transition).
- Added local development quick-start and operational startup guidance.
- Added formalized README update prompt for repeatable status refreshes.
- Refined Workday runtime modular structure and validated three core tools.
- Completed type-hint quality refinements consistent with Pylance discipline.
## Next milestone focus
| Milestone | ID | Status | Exit criteria |
| --- | --- | --- | --- |
| Mock-to-API transition | WIS-008 | 🟡 Yellow | Obtain non-prod credentials, complete secure token flow, execute first API-backed read tool in runtime path. |
| Mock-to-API transition | WIS-008 | 🟡 Yellow | Non-prod credentials approved, secure token flow operational, first API-backed read call validated. |
## Local Development Quick-Start
## Local development quick-start
### 1. Activate Environment
### 1. Activate environment
`source .venv/Scripts/activate`
```bash
source .venv/Scripts/activate
```
### 2. Launch Inspector
### 2. Launch inspector
`npx @modelcontextprotocol/inspector python server.py`
```bash
npx @modelcontextprotocol/inspector python server.py
```
### 3. Port Cleanup (If Blocked)
### 3. Port cleanup (if blocked)
- **Proxy (6277):** `taskkill //F //IM node.exe`
- **Inspector (6274):** `taskkill //F //IM node.exe`
- Proxy (6277): `taskkill //F //IM node.exe`
- Inspector (6274): `taskkill //F //IM node.exe`
## Reference documents