Skip to content

feat: Application tracker status states — complete lifecycle (Closes #40) - #150

Open
laurentketterle-hub wants to merge 1 commit into
mergeos-bounties:masterfrom
laurentketterle-hub:feat/application-tracker-40
Open

feat: Application tracker status states — complete lifecycle (Closes #40)#150
laurentketterle-hub wants to merge 1 commit into
mergeos-bounties:masterfrom
laurentketterle-hub:feat/application-tracker-40

Conversation

@laurentketterle-hub

Copy link
Copy Markdown

Implements application tracker for NeraJob #40 (100 MRG).

Files added:

  • nerajob/tracker.py — ApplicationTracker class with:
    • 14 status states (SAVED→APPLIED→SCREENING→...→ARCHIVED)
    • Validated state transition machine
    • Application timeline/history tracking
    • Aggregate statistics (response rate, offers, active count)
    • JSON export with stats

Usage:

from nerajob.tracker import ApplicationTracker, Application, ApplicationStatus
tracker = ApplicationTracker()
app = Application(id='1', job_id='j1', job_title='Engineer', company='Acme')
app.transition(ApplicationStatus.APPLIED, 'Submitted via Lever')
tracker.add(app)
print(tracker.stats())

Implements application tracking with state machine for NeraJob#40.
- 14 status states from SAVED to ARCHIVED
- Validated state transitions
- Application timeline/history tracking
- Aggregate statistics and JSON export
- Active vs terminal state detection

Signed-off-by: laurentketterle-hub <laurentketterle-hub@users.noreply.github.com>
@laurentketterle-hub

Copy link
Copy Markdown
Author

/claim

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant