Skip to content

feat: merge monitoring tab changes to test - #421

Merged
plakkara-bc merged 1 commit into
testfrom
dev
Jul 28, 2026
Merged

feat: merge monitoring tab changes to test#421
plakkara-bc merged 1 commit into
testfrom
dev

Conversation

@plakkara-bc

Copy link
Copy Markdown
Contributor
  • feat: add job monitoring API and wire frontend tab to backend

Add job_runs summary/warning columns, job_activities table, monitoring read endpoints (latest, history, activities), and activity logging on job lifecycle. Update JobMonitoringTab to call the new API via jobs-service.

Clean implementation on top of origin/dev — no release merge baggage.

  • feat(job-monitoring): Step 1 — APL-10 job list and monitoring foundations

Wire latest-per-type job list to FDD: six monitored types, IDIR on user triggers, display formatters, and summaries derived from job metadata. Drop persisted summary/warning columns; consolidate V26 migration.

  • feat(job-monitoring): Step 2 — APL-11 job history query

Include ICM/MIS child runs in history, filter by startedAt window, default sort startedAt DESC, and support IDIR filter on triggered_by_user.

  • feat(job-monitoring): Step 3 — FDD activity enums and instrumentation

Add JobActivityService with FDD severity/type enums, remove lifecycle activity noise, record eligibility and ICM sync notices, and align Activities UI filters with APL-12.

  • feat(job-monitoring): Step 4 — job-scoped dual-write activity logging

Wire AsyncLocalStorage job scope through JobRunner so curated Winston logs also persist to job_activities via AppLogger activity methods and aggregation.

  • feat(job-monitoring): Step 5 — admin gating, auto-refresh, handler instrumentation

Gate the Monitoring tab to ICM CSA Application RW users, poll job tables while runs are active, and extend activity logging to auto-batch, send CRA, retry-failed, and sync-ICM handlers.

  • feat(job-monitoring): wire eligibility and WKL activity instrumentation

Extend activity logging to eligibility skip paths and WKL matching services, and remove RW-only Monitoring tab gating until a role model is defined.

  • feat(job-monitoring): allow jobless activities and close instrumentation gaps

Make job_activities.job_run_id nullable so standalone operator actions can be logged, persist curated activities without job scope, and wire remaining job-scoped gaps (parse failures, stuck jobs, auto-batch validation, ingest).

  • feat(job-monitoring): Phase 5.1 logging convention and manual op activities

Unify AppLogger on tagged warn/error/crit dual-write, log manual eligibility and batch issues to Activities, and demote mocks/config noise to log while keeping integration data-quality warns in Splunk.

  • docs(job-monitoring): move impl plan to documentation and fold V27 into V26

Relocate the implementation plan out of docs/functional-design, trim ADR 0012 to the standard template, and create job_activities with nullable job_run_id in V26 only.

  • chore: keep documentation and docs README out of the repo

Remove docs/README.md and untrack documentation/; add documentation/ to .gitignore and drop broken ADR links to local-only docs.

  • revert: restore ADR 0012 to pre-job-monitoring version

Decision doc updates will be amended separately later.

  • chore: drop documentation/ from .gitignore

Local documentation stays excluded via .git/info/exclude per clone.

  • fixed the lint fail issues

  • updated the column filters

  • fixed sorting accross tables of job monitoring tab


Description

Please provide a summary of the change and the issue fixed. Please include relevant context. List dependency changes.

Fixes # (issue)

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update

How Has This Been Tested?

  • Automated/Unit tests
  • Manual tests (description below)
  • No new tests are required

Checklist

  • I have tested my changed locally
  • The code builds and pass all tests, No warning
  • I have made corresponding changes to the documentation

In Progress/Follow Up

* feat: add job monitoring API and wire frontend tab to backend

Add job_runs summary/warning columns, job_activities table, monitoring
read endpoints (latest, history, activities), and activity logging on job
lifecycle. Update JobMonitoringTab to call the new API via jobs-service.

Clean implementation on top of origin/dev — no release merge baggage.

* feat(job-monitoring): Step 1 — APL-10 job list and monitoring foundations

Wire latest-per-type job list to FDD: six monitored types, IDIR on user
triggers, display formatters, and summaries derived from job metadata.
Drop persisted summary/warning columns; consolidate V26 migration.

* feat(job-monitoring): Step 2 — APL-11 job history query

Include ICM/MIS child runs in history, filter by startedAt window,
default sort startedAt DESC, and support IDIR filter on triggered_by_user.

* feat(job-monitoring): Step 3 — FDD activity enums and instrumentation

Add JobActivityService with FDD severity/type enums, remove lifecycle
activity noise, record eligibility and ICM sync notices, and align
Activities UI filters with APL-12.

* feat(job-monitoring): Step 4 — job-scoped dual-write activity logging

Wire AsyncLocalStorage job scope through JobRunner so curated Winston logs
also persist to job_activities via AppLogger activity methods and aggregation.

* feat(job-monitoring): Step 5 — admin gating, auto-refresh, handler instrumentation

Gate the Monitoring tab to ICM CSA Application RW users, poll job tables
while runs are active, and extend activity logging to auto-batch, send CRA,
retry-failed, and sync-ICM handlers.

* feat(job-monitoring): wire eligibility and WKL activity instrumentation

Extend activity logging to eligibility skip paths and WKL matching services,
and remove RW-only Monitoring tab gating until a role model is defined.

* feat(job-monitoring): allow jobless activities and close instrumentation gaps

Make job_activities.job_run_id nullable so standalone operator actions can
be logged, persist curated activities without job scope, and wire remaining
job-scoped gaps (parse failures, stuck jobs, auto-batch validation, ingest).

* feat(job-monitoring): Phase 5.1 logging convention and manual op activities

Unify AppLogger on tagged warn/error/crit dual-write, log manual eligibility and batch issues to Activities, and demote mocks/config noise to log while keeping integration data-quality warns in Splunk.

* docs(job-monitoring): move impl plan to documentation and fold V27 into V26

Relocate the implementation plan out of docs/functional-design, trim ADR 0012 to the standard template, and create job_activities with nullable job_run_id in V26 only.

* chore: keep documentation and docs README out of the repo

Remove docs/README.md and untrack documentation/; add documentation/ to .gitignore and drop broken ADR links to local-only docs.

* revert: restore ADR 0012 to pre-job-monitoring version

Decision doc updates will be amended separately later.

* chore: drop documentation/ from .gitignore

Local documentation stays excluded via .git/info/exclude per clone.

* fixed the lint fail issues

* updated the column filters

* fixed sorting accross tables of job monitoring tab

---------

Co-authored-by: plakkara <preethi.lakkaraju@gov.bc.ca>
@plakkara-bc
plakkara-bc requested a review from saifrazabc July 28, 2026 02:34
@plakkara-bc plakkara-bc changed the title feat: add job monitoring API and wire frontend tab to backend (#420) feat: merge monitoring tab changes to test Jul 28, 2026
@plakkara-bc
plakkara-bc requested a review from kayboy-007 July 28, 2026 11:58
@plakkara-bc
plakkara-bc merged commit 7574df9 into test Jul 28, 2026
28 checks passed
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.

3 participants