Factorizer/Cluster ERP WikiCluster ERP Türkçe
Home / Business modules

Reference

Project actions, activities, and meetings

Reference for actions, activities, meetings, and kickoffs in projects, with fields, statuses, activity relations and material links, and meeting rules.

This page describes four sub-modules of src/cluster_erp/modules/projects/. actions/ holds the actions of a project, from meetings or ad hoc. activities/ holds the activities of a project schedule, their dependency relations, and their links to materials. kickoffs/ holds the single kick-off meeting of a project, and meetings/ the weekly follow-up meetings. The schedule itself is on schedules.

Scope and source

  • Defined in: models.py, schemas.py, services.py, routes.py, and metadata.py of actions, activities, kickoffs, and meetings.
  • Count: 6 tables; 8 action routes, 12 activity routes, 7 kick-off routes, and 6 meeting routes (@router. decorators); 3 ActionMeta entries.

Fields

Entity Table Key fields Source
ProjectAction projects_actions project_id, source (kickoff, weekly, or adhoc), source_meeting_id, title, description, owner_id, due_at, status, completed_at, completed_by src/cluster_erp/modules/projects/actions/models.py:17-55, src/cluster_erp/modules/projects/actions/schemas.py:9-10
ProjectActivity projects_activities schedule_id, code, name, activity_type, planned_start, planned_end, work_qty_hours, work_center_group_ref, status, milestone_usage, release_successors, actual_at, ev_technique, budgeted_hours src/cluster_erp/modules/projects/activities/models.py:28-80
ProjectActivityRelation projects_activity_relations predecessor_id, successor_id, relation_type (FS, SS, FF, SF), lag_days src/cluster_erp/modules/projects/activities/models.py:83-108, src/cluster_erp/modules/projects/activities/schemas.py:18
ActivityMaterialLink projects_activity_material_links activity_id, project_item_id, bom_item_ref, qty src/cluster_erp/modules/projects/activities/models.py:111-135
KickoffMeeting projects_kickoffs project_id, scheduled_at, held_at, attendees_jsonb, checklist_items_jsonb, minutes_doc_id src/cluster_erp/modules/projects/kickoffs/models.py:17-56
WeeklyFollowupMeeting projects_weekly_meetings project_id, week_no, held_at, attendees_jsonb, summary src/cluster_erp/modules/projects/meetings/models.py:17-52

Activity types are engineering, procurement, production, assembly, milestone, and cost; statuses are planned, in_progress, done, and cancelled; the earned-value technique is 0_100, 50_50, or percent_complete (src/cluster_erp/modules/projects/activities/schemas.py:10-33).

Statuses and actions

An action moves from open to in_progress, and from either to done or cancelled; done and cancelled are terminal (src/cluster_erp/modules/projects/actions/services.py:20-25).

stateDiagram-v2
 [*] --> open
 open --> in_progress
 open --> cancelled
 in_progress --> done
 in_progress --> cancelled

In prose: an action starts open, is worked on, and ends done or cancelled. The service refuses any other step (src/cluster_erp/modules/projects/actions/services.py:160-170).

Action Label Condition Endpoint Permission Source
transition (action) Change Status none; the service checks the step POST /actions/{id}/transition action.assign src/cluster_erp/modules/projects/actions/metadata.py:95-104, src/cluster_erp/modules/projects/actions/routes.py:88
mark_held (kick-off) Mark as Held none POST /kickoffs/{id}/mark-held meeting.record src/cluster_erp/modules/projects/kickoffs/metadata.py:43-52, src/cluster_erp/modules/projects/kickoffs/routes.py:89
update_checklist (kick-off) Update Checklist none POST /kickoffs/{id}/checklist meeting.record src/cluster_erp/modules/projects/kickoffs/metadata.py:53-62, src/cluster_erp/modules/projects/kickoffs/routes.py:76

Routes

Method and path Permission Source
GET /actions/by-project/{project_id}, GET /actions/overdue, GET /actions/{action_id} project.read src/cluster_erp/modules/projects/actions/routes.py:25-61
POST /actions/; PUT, DELETE /actions/{action_id}; bulk delete action.assign, project.update src/cluster_erp/modules/projects/actions/routes.py:49-113
GET /activities/by-schedule/{schedule_id}, /for-project, /by-project/{project_id}, /{activity_id}, /{activity_id}/materials project.read src/cluster_erp/modules/projects/activities/routes.py:27-168
POST, PUT, DELETE activities, relations, and material links project.update src/cluster_erp/modules/projects/activities/routes.py:105-192
Kick-off routes under /kickoffs project.read, meeting.record src/cluster_erp/modules/projects/kickoffs/routes.py:23-101
Meeting routes under /meetings project.read, meeting.record src/cluster_erp/modules/projects/meetings/routes.py:23-85

Constraints and validation

  • An activity needs an existing schedule, and its planned end may not precede its planned start (src/cluster_erp/modules/projects/activities/services.py:97-121).
  • A relation may not link an activity to itself, both activities must be on the same schedule, and a relation that would create a cycle is refused (src/cluster_erp/modules/projects/activities/services.py:154-211).
  • A material link needs a project item or a BOM item reference (src/cluster_erp/modules/projects/activities/services.py:221-243).
  • Activity changes emit ProjectActivityChanged (src/cluster_erp/modules/projects/activities/services.py:43-58).
  • A project has one live kick-off, and one live meeting per week number (src/cluster_erp/modules/projects/kickoffs/models.py:20-27, src/cluster_erp/modules/projects/meetings/models.py:19-27).
  • mark_held stamps held_at once and emits ProjectKickoffCompleted (src/cluster_erp/modules/projects/kickoffs/services.py:101-121).
  • GET /actions/overdue lists actions whose due time has passed (src/cluster_erp/modules/projects/actions/services.py:51-70).
  • Creating an action emits ProjectActionCreated (src/cluster_erp/modules/projects/actions/services.py:94).
  • Hours are Numeric: work quantity Numeric(10, 2), budgeted hours Numeric(12, 2), link quantity Numeric(14, 4) (src/cluster_erp/modules/projects/activities/models.py:43-45, src/cluster_erp/modules/projects/activities/models.py:71-73, src/cluster_erp/modules/projects/activities/models.py:132).

Terms introduced

Term Code identifier Definition Turkish term Source
project action ProjectAction A task with an owner and a due time, from a meeting or ad hoc. Proje aksiyonu src/cluster_erp/modules/projects/actions/models.py:17
project activity ProjectActivity One planned step of a project schedule. Proje aktivitesi src/cluster_erp/modules/projects/activities/models.py:28
activity relation ProjectActivityRelation A dependency between two activities, of type FS, SS, FF, or SF, with a lag. Aktivite ilişkisi src/cluster_erp/modules/projects/activities/models.py:83
kick-off meeting KickoffMeeting The opening meeting of a project with its checklist. Başlangıç toplantısı src/cluster_erp/modules/projects/kickoffs/models.py:17

Verified against commit 92f8051 on 2026-11-13.

Verified against commit 92f8051 · 2026-11-13