diff --git a/activity-definitions/weekly-railiance-allocation-review.md b/activity-definitions/weekly-railiance-allocation-review.md new file mode 100644 index 0000000..efb9ced --- /dev/null +++ b/activity-definitions/weekly-railiance-allocation-review.md @@ -0,0 +1,68 @@ +--- +id: weekly-railiance-allocation-review +name: Weekly Railiance allocation review +enabled: false +owner: activity-core +governance: custodian +status: proposed +trigger: + type: cron + cron_expression: "0 8 * * 1" + timezone: Europe/Berlin + misfire_policy: skip +context_sources: [] +--- + +# Weekly Railiance allocation review + +CUST-WP-0071-T05 source preparation. Activity-core owns durable scheduling and +execution receipts; the-custodian owns the deterministic retained evidence join +in `scripts/weekly_allocation_report.py`. Collector inputs remain owned by +railiance-cluster, rapp-telemetry, workload owners and resource-control. + +**Disabled and not ready for registration or activation.** No durable Railiance +executor/profile, input capture path, retention location, delivery channel or +review-owner acknowledgment is invented here. The request template contains null +bindings and the command refuses execution until they are supplied. A workstation +rein is not the accepted durable Railiance executor required by this workplan. +Bind the accepted profile before projection into any profile-enforcing runtime. + +The fixed command, in the-custodian checkout, is: + +```text +python3 scripts/weekly_allocation_report.py --request config/weekly-allocation-request.json +``` + +An admitted executor must provide a per-run stable request binding the actual +seven-day query captures, matching cluster/allocation snapshot and provenance, +portfolio input, previous retained report, explicit evaluation timestamp and +durable output path. Retrying the identical request is idempotent; changed input +at an existing report path is refused. Never replace a failed capture with old +data carrying a new timestamp. The runner reports missing or stale data as gaps. + +Use recommendation IDs as upsert keys into existing owner work records after +accepted routing. No task fan-out, sizing change or delivery is performed by this +script. The task below asks an executor to run one fixed command, not to devise +an allocation or start a coding session. An ops_run success alone is not an owner +acknowledgment, independent missed-run proof or useful-operation acceptance. + +Enable only after CUST-WP-0071-T04 and executor-owner acceptance, including scoped +read access, retention beyond seven days, report delivery/acknowledgment and an +outside-runner stale/failed/missed-run recovery route. Exercise retry and missed +run handling; retain the first unattended scheduled report and owner receipt. +Rollback is `enabled: false`; reports are retained. Misfires are skipped, so +explicit missed-run detection and recovery are required before enablement. + +```rule +id: run-weekly-railiance-allocation-review +condition: "True" +action: + task_template: Retain the weekly Railiance allocation assessment + description: 'In the-custodian checkout run exactly: python3 scripts/weekly_allocation_report.py --request config/weekly-allocation-request.json. Report the exit code and printed JSON receipt. Use only the accepted executor-owned input request; do not collect credentials, invent inputs, resize workloads, edit or commit source, create owner tasks or send messages.' + target_repo: the-custodian + priority: medium + labels: ["automated", "allocation-review", "bounded-operation"] + execution_refs: + correlation_id: CUST-WP-0071-T05 + assignment_ref: CUST-WP-0071-T05 +```