chore: archive completed OpenSpec changes
Archive all completed changes and create final specifications: Archived changes (2025-11-03): - add-application-email (8 requirements) - add-application-management (9 requirements) - add-application-validation (9 requirements) - add-cover-letter-generation (13 requirements) - add-cover-letter-pdf-conversion (7 requirements) - add-profile-template (4 requirements) - add-profile-validation (3 requirements) Created specifications: - applicant-profile: User profile management with validation - application-email: Email generation for job applications - application-management: Application workflow and folder structure - application-validation: Application completeness checking - cover-letter-generation: Tailored cover letter creation - cover-letter-pdf-conversion: PDF export with Swiss formatting All features are now fully documented in openspec/specs/ and ready for use. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+65
@@ -0,0 +1,65 @@
|
||||
# Applicant Profile
|
||||
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Profile Validation Command
|
||||
|
||||
The system SHALL provide a `/validate-profile` slash command that verifies the profile is complete and ready for use.
|
||||
|
||||
#### Scenario: Validation command is available
|
||||
|
||||
- **WHEN** user is in a directory containing the framework
|
||||
- **THEN** they can run `/validate-profile` to check if `profile.md` is complete
|
||||
|
||||
#### Scenario: Validation detects incomplete profile
|
||||
|
||||
- **WHEN** `/validate-profile` is run and `profile.md` contains placeholder text patterns (e.g., `[Your name]`, `[Company]`)
|
||||
- **THEN** the command reports which sections contain placeholders and need completion
|
||||
|
||||
#### Scenario: Validation confirms complete profile
|
||||
|
||||
- **WHEN** `/validate-profile` is run and `profile.md` has no placeholder patterns in required fields
|
||||
- **THEN** the command reports that the profile is ready for application generation
|
||||
|
||||
### Requirement: Placeholder Detection
|
||||
|
||||
The validation SHALL detect common placeholder patterns indicating incomplete profile data.
|
||||
|
||||
#### Scenario: Square bracket placeholders detected
|
||||
|
||||
- **WHEN** profile contains text in the format `[placeholder text]`
|
||||
- **THEN** validation identifies these as incomplete fields
|
||||
|
||||
#### Scenario: Required sections checked
|
||||
|
||||
- **WHEN** validation runs
|
||||
- **THEN** it checks that Personal Information, Professional Summary, and at least one Work Experience entry are filled out (not placeholders)
|
||||
|
||||
#### Scenario: Optional sections allowed to be empty
|
||||
|
||||
- **WHEN** validation runs
|
||||
- **THEN** empty optional sections (Certifications, Projects) do not cause validation failure
|
||||
|
||||
### Requirement: Automatic Validation Before Applications
|
||||
|
||||
The `src/CLAUDE.md` instructions SHALL require Claude Code to validate the profile before generating any application documents.
|
||||
|
||||
#### Scenario: Profile validated before CV generation
|
||||
|
||||
- **WHEN** user requests CV generation
|
||||
- **THEN** Claude Code first validates `profile.md` is complete before proceeding
|
||||
|
||||
#### Scenario: Profile validated before cover letter generation
|
||||
|
||||
- **WHEN** user requests cover letter or application email generation
|
||||
- **THEN** Claude Code first validates `profile.md` is complete before proceeding
|
||||
|
||||
#### Scenario: Validation failure blocks application generation
|
||||
|
||||
- **WHEN** profile validation fails (incomplete data detected)
|
||||
- **THEN** Claude Code informs the user to complete the profile and does not generate application documents
|
||||
|
||||
#### Scenario: User can skip validation explicitly
|
||||
|
||||
- **WHEN** user explicitly requests to skip validation (e.g., "generate CV without validation" or "I know my profile is incomplete, proceed anyway")
|
||||
- **THEN** Claude Code can proceed with a warning about potential placeholder text in output
|
||||
Reference in New Issue
Block a user