# io8 Project Manager Agent - Customized for This Project

## Project-Specific Instructions

# Product Requirements Document (PRD) Update - 2025-09-25 08:05:00

## 1. Executive Summary Update
This update refines the PRD to reflect the user request for a simple calculator application. The application will be built using the existing Angular Clarity Boilerplate, leveraging its structure and components to minimize development time and effort.  The application will be a single-page application with client-side calculation logic. No backend is required.

## 2. Product Vision & Strategy Update
The vision is to deliver a simple, user-friendly, and accurate calculator application that integrates seamlessly with the existing Angular Clarity Boilerplate. The strategy will focus on leveraging existing components and minimizing code complexity.

## 5. Solution Overview Update
The solution involves creating a new Angular component (`CalculatorComponent`) which encompasses the UI (buttons, display) and the logic for handling calculations and error checking.  This component will interact with the existing Clarity Design System for consistency and minimal code implementation.

## 6. Functional Requirements Update
The existing functional requirements for the base project remain unchanged. The calculator application adds the following specific functional requirements:

- **FR-Calc-001:** Perform addition of two numbers.
  - **Acceptance Criteria:** The calculator should correctly display the sum of two valid numerical inputs.
  - **Priority:** High
- **FR-Calc-002:** Perform subtraction of two numbers.
  - **Acceptance Criteria:** The calculator should correctly display the difference of two valid numerical inputs.
  - **Priority:** High
- **FR-Calc-003:** Perform multiplication of two numbers.
  - **Acceptance Criteria:** The calculator should correctly display the product of two valid numerical inputs.
  - **Priority:** High
- **FR-Calc-004:** Perform division of two numbers.
  - **Acceptance Criteria:** The calculator should correctly display the quotient of two valid numerical inputs.  It should handle division by zero gracefully (e.g., display an appropriate error message).
  - **Priority:** High
- **FR-Calc-005:** Handle invalid input (non-numeric characters).
  - **Acceptance Criteria:** The calculator should display an appropriate error message for invalid input and prevent calculation errors.
  - **Priority:** Medium
- **FR-Calc-006:** Clear the display and internal state.
  - **Acceptance Criteria:** A clear button should reset the input display and the internal calculation state.
  - **Priority:** High
- **FR-Calc-007:** Display calculation results clearly.
  - **Acceptance Criteria:** The result of a calculation should be displayed prominently and clearly in the calculator's display.
  - **Priority:** High

## 7. Non-Functional Requirements Update
The existing non-functional requirements from the Angular Clarity Boilerplate remain applicable.

## 8. Epic Stories Update
### Epic 1: Calculator Functionality
**Epic Description:** Implement the core functionality of the calculator application, including basic arithmetic operations and error handling.
**Business Value:** Provides a simple and useful calculator application for users.
**Acceptance Criteria:** All functional requirements (FR-Calc-001 to FR-Calc-007) are met.

**User Stories:**
- **US-Calc-001:** As a user, I want to add two numbers so I can calculate their sum.
  - **Acceptance Criteria:** See FR-Calc-001
  - **Story Points:** 3
  - **Priority:** High
- **US-Calc-002:** As a user, I want to subtract two numbers so I can calculate their difference.
  - **Acceptance Criteria:** See FR-Calc-002
  - **Story Points:** 3
  - **Priority:** High
- **US-Calc-003:** As a user, I want to multiply two numbers so I can calculate their product.
  - **Acceptance Criteria:** See FR-Calc-003
  - **Story Points:** 3
  - **Priority:** High
- **US-Calc-004:** As a user, I want to divide two numbers so I can calculate their quotient.
  - **Acceptance Criteria:** See FR-Calc-004
  - **Story Points:** 5
  - **Priority:** High
- **US-Calc-005:** As a user, I want the calculator to handle invalid input gracefully so I don't encounter unexpected errors.
  - **Acceptance Criteria:** See FR-Calc-005
  - **Story Points:** 3
  - **Priority:** Medium
- **US-Calc-006:** As a user, I want to be able to clear the display and reset the calculator.
  - **Acceptance Criteria:** See FR-Calc-006
  - **Story Points:** 2
  - **Priority:** High
- **US-Calc-007:** As a user, I want the results to be clearly displayed so I can easily see them.
  - **Acceptance Criteria:** See FR-Calc-007
  - **Story Points:** 2
  - **Priority:** High

## 10. Technical Requirements Update
The calculator application will leverage the existing Angular Clarity Boilerplate's technical architecture.  The `CalculatorComponent` will be a new component added to the application, leveraging the existing `SharedModule` for reusable UI elements. No backend changes are required.

## 12. Risk Assessment Update
- **Risk:** Integration challenges with existing Angular Clarity Boilerplate.
  - **Mitigation:** Thorough testing and incremental development.
- **Risk:** Unexpected behavior due to framework updates or dependencies.
  - **Mitigation:** Use latest stable versions and rigorous testing.
- **Risk:** UI design inconsistencies with Clarity Design System.
  - **Mitigation:** Adherence to Clarity guidelines and review of UI designs.

## 13. Timeline & Milestones Update
- **Milestone 1 (Day 1):** Complete design and initial implementation of `CalculatorComponent`.
- **Milestone 2 (Day 2):** Implement core arithmetic operations (addition, subtraction, multiplication, division).
- **Milestone 3 (Day 3):** Implement error handling and input validation.
- **Milestone 4 (Day 4):** Thorough testing and bug fixes.
- **Milestone 5 (Day 5):** Deployment to staging environment.
- **Milestone 6 (Day 6):** Deployment to production environment.


# Project Plan Update - 2025-09-25 08:10:00

## Project Methodology Update
This project will follow an Agile methodology, using Scrum principles. The project will be divided into short sprints (daily sprints for this example) with daily stand-up meetings.

## Project Planning Framework Update
The existing project planning framework for the base Angular Clarity Boilerplate will be adapted to the Calculator App.  This involves creating user stories for the calculator features (already done in PRD update), defining acceptance criteria, and prioritizing tasks.

## Timeline and Milestone Strategy Update
The project timeline will be adjusted to reflect the scope of the Calculator App.  A 6-day timeline is proposed (adjustable based on actual development speed).  Milestones are described in the updated PRD.

## Customized io8pm Workflow Update
This project uses the existing `io8pm` workflow of the base project.  This involves utilizing existing documentation and adapting it for the Calculator App.  The key steps are:
1. **Requirement Analysis:**  Done based on the user prompt and existing documents.
2. **Design and Planning:**  This project involved updating the existing design and planning documents.
3. **Development:**  This section will track the daily progress of implementing the Calculator App.
4. **Testing and Quality Assurance:**  Testing will be performed at each stage of development using unit and integration tests.
5. **Deployment:**  This step details the process of deploying the Calculator App (following the Angular Clarity Boilerplate's deployment method).

## Risk Management Plan
Risks and mitigation strategies are detailed in the updated PRD.  Regular risk assessment and monitoring are critical during the project lifecycle.

## Base Agent Prompt Reference

This agent is based on the standard io8pm agent with project-specific customizations above.
Refer to the base io8pm agent prompt for general PM principles and workflow instructions.
